Talk:Julia (programming language): Difference between revisions

Content deleted Content added
AnomieBOT (talk | contribs)
Criticism: Answer
Line 49:
 
:The drawbacks of Julia are pretty obvious, they are mostly inherited from drawbacks of its paradigms and design choices. For example, there is a compile time attached to pretty much everything you do in Julia for the first time, because it's a compiled language. So the fact that we refer to ahead-of-time compilation is a big hint towards that. We could create a section and populate it with these drawbacks, however. For reference, Python doesn't have a section like that either, nor is the text particularly hinting at its disadvantages. [[User:Bruno H Vieira|Bruno H Vieira]] ([[User talk:Bruno H Vieira|talk]]) 14:50, 5 April 2020 (UTC)
 
::As you say Python has no drawback section, and its pros and cons are somewhat opposite to Julia. Julia however also has an interpreter, a non-default and undocumented... --compile=min option to enable it so you can get roughly Python behavior, avoiding that "compile" overhead. Language (by default) can have only either or, and and both have pros and cons. There is a third hybrid option "tiered compilation"[https://devblogs.microsoft.com/dotnet/tiered-compilation-preview-in-net-core-2-1/] in C#, not yet in Julia. [[User:Comp.arch|comp.arch]] ([[User talk:Comp.arch|talk]])
 
Following up on this. The article seems to read as an advertisement right now, most egregiously/noticeably the [[Julia (programming language)#Notable uses|Notable uses]] section. Would be great to have another editor check this. For starters, I would add a criticism section, note drawbacks in various sections, and "neutralize" the tone in several parts of the article.
Line 59 ⟶ 61:
 
: Besides the notable users, The "Current and future platforms" section also feels a bit like an advertisement or maybe just confused. It compares Julia's JIT to other languages and even brings up the support tiers. It goes into a very high depth here, although I think we should expect more detail for a numerical language than most conventional languages. [[User:Yafwa|Yafwa]] ([[User talk:Yafwa|talk]]) 04:33, 5 July 2020 (UTC)
 
: On "Julia is in practice interoperable with many languages", I believe I wrote it, and a lot of other, some you point out, so feel free to amend. Where do you draw the line with "many"? You can call to/from Python, R, C, C++, Rust, Zig, (Swift I guess), and of the top 20 language on July 2020 TIOBE index list, I only see Scratch as problematic. You can call C#[https://discourse.julialang.org/t/is-it-possible-to-call-c-functions-with-julia/18979/2?] (while not much done), i.e. .NET and thus I believe Visual Basic .NET (wouldn't cover Classic, but I'm unsure if important or how easy to do differently). For some language you can only call from Julia, e.g. now to MATLAB, Java (not back as far as I know, except with callbacks). You can call to JavaScript, meaning Node.js (could call from but that package is outdated), or use in a web browser or through WebAssembly. I've called Octave from Julia, but that was though Python. You can call all languages with a C API (i.e. without garbage collection), why I listed Zig without knowing anyone actually having done that.. You can call '''from''' Ruby[https://github.com/mrkn/ruby-julia] and more, so in some sense those are interoperable but I've not seen a package to call in the other direction. "we send an integer value from Julia to Go and back via a C shared library (written in Go)."[https://rsdoiel.github.io/blog/2018/03/11/accessing-go-from-julia.html] [[User:Comp.arch|comp.arch]] ([[User talk:Comp.arch|talk]]) 13:47, 8 July 2020 (UTC)
 
== Vim and Emacs and other cruft ==