Talk:Julia (programming language): Difference between revisions

Content deleted Content added
Yafwa (talk | contribs)
Line 67:
 
::: I'm thinking a wording more like the following would work: "Julia has a foreign function interface to C, with libraries available to interact with other languages[...refs]". That sentence would avoid trying to judge how practical or complete the interoperability is. And of course, if there are other reasons that might be notable, we can mention those. Is interop a priority for the Julia language, or something which makes it stand out amongst languages in the same class? If some sources have identified Julia as being particularly strong in interop, it would also be notable. [[User:Yafwa|Yafwa]] ([[User talk:Yafwa|talk]]) 06:31, 11 July 2020 (UTC)
 
:::: I just thought "many" would be uncontroversial at the time, when I put it in. To clarify, if you can call another language at all, you can usually call C, and then indirectly to a lot of other. In theory, all (those that can be embedded). Also you can interact with a web service (or ZMQ), so that way in theory also all languages, but often not what's meant. Yes, I think it's fair to say that interop is a priority for Julia, why it has the {{code|ccall}} keyword (and now macro too), it is unusual (no boilerplate, for many other languages it's the opposite). At https://github.com/JuliaInterop/ you can e.g. find [https://github.com/JuliaInterop/MathLink.jl MathLink.jl] to call proprietary Wolfram Mathematica™, and I just discovered OctCall.jl, but I was calling Octave before, through Python (not a big hoop to jump through, but without would be slightly easier). I did not know about [https://github.com/azurefx/DotNET.jl DotNET.jl Julia [heart] .NET] package. You can call Julia from D, but as I know the guy personally who made it work, I only list from people I'm not familiar with, non-Julia websites. From different people in that thread: "Julia has 0-copy numpy array interop through PyCall.jl if that's what you're asking."[https://news.ycombinator.com/item?id=21636661] "There are only 2 languages with really good Python interop [..]One of them is Julia! [..] The other is Swift [..]And here is the kicker: Packages is Julia are far more interoperable than in any other eco system I have seen. Than means 10 packages in Julia can quickly do more than 50 packages in other language."[https://news.ycombinator.com/item?id=21636661] "Julia's `ccall` is great in terms of overhead[0], so calling Rust shared libraries is not a problem."[https://news.ycombinator.com/item?id=19134140]. A tutorial I found [https://techytok.com/lesson-other-languages/ on interop] and a [https://www.meetup.com/Triangle-Julia-Users/events/234969968/ meetup]. And:
 
::::: “When you see such a tweet from a renowned author about Python and Julialang interoperability then you feel good about investing time learning in #JuliaLang ”
::::: [tweet]
::::: "This is 100% Julia code, If you replace the first 3 lines with [those importing tensorflow and keras)], you can run the exact same code in Python. Talk about excellent interoperability!".[https://pradeeppant.com/2020/06/29/python_Julia_lang_interop.html]
:::: I clicked on the tweet author's name and saw "Author of the book Hands-On #MachineLearning with #ScikitLearn, #Keras and #TensorFlow. Former PM of #YouTube video classification. Founder of telco operator." [[User:Comp.arch|comp.arch]] ([[User talk:Comp.arch|talk]]) 18:44, 14 July 2020 (UTC)
 
== Vim and Emacs and other cruft ==