@jmw150 To add to this, I love Julia (and other lisp/pseudolisp dialects like racket). I think it should seriously compete for Python on your list 😉
It has so many nice features, spiffy macros, quasiquoting (though with slightly different syntax), and has been able to do anything I ask of it with flexibility and grace. While the package environment isn't as extensive as Python yet, I'm almost positive it will become the standard for scientific computing within a decade or two, assuming current trends hold (which, obviously, they probably won't, but I still like it lol).
@jmw150 Yeah, I've seen both of those since they came out actually! I've been a huge fan of their work, and the extensions thereof. Especially since they leverage the Cuda package to make it trivial to run these operations on GPUs, its pretty incredible that it requires no overhead on the dev's part.
Have you seen their website at fluxml.ai?
Yeah. I should check it out more though. It looks like it grew a lot.
@johnabs
Yeah it looks pretty great. I prefer a language that is fast by default without user effort costs. Python is mostly number 2 because it is the most popular in general, it is easy to use, and I am enjoying Pytorch and all of the scipy libraries. So maybe. :)
Did you check out this paper? Julia syntax is now directly differentiable.
https://arxiv.org/abs/1810.07951
And its code.
https://github.com/FluxML/Zygote.jl