2 comments

[ 3.4 ms ] story [ 21.1 ms ] thread
Nice article- I very much enjoyed it.

As a side note: I don’t understand why Julia is compared to Python. It really is in the same realm as R - a language designed for scientific computing.

Python is a general purpose language - you can do any (most) tasks with it. Being general purpose is also useful for scientific computing because when the “science” builds into something more it very easy to make an API or a webpage with it etc.

Because of this I don’t think Julia will ever take off in the same way because of it more narrow scope.

It's not such a clear-cut distinction. There do exist languages like Matlab (and possibly R, I'm not as familiar with it) that intrinsically have or historically had a lot of limitations in them, that prevented them from being general purpose languages. If Python/Java/C are on one side of the spectrum as clear general purpose languages, Matlab would be on the other side as a niche-specific language.

Julia is not (yet) completely on either side, but is pretty close to the general purpose side - the language itself is fully general purpose and very well designed for that, but the ecosystem around it grew to be science-focused (though not science-exclusive by any means), and the standard library having things like `LinearAlgebra` and `SparseArrays` puts the focus in that direction too.

That could easily turn out to be a temporary situation though. Rails turned Ruby into a major webdev language, numpy/scipy pushed Python into the scicomp space which nobody would have predicted at the time, and it's quite possible some best-in-class package ushers Julia into new and unpredictable spaces. The language leaves the possibility open, and it's too early to tell where the ecosystem will take it.