Julia stands definitely on firm foundations, has a solid design and is strongly-typed too.
Re:Why I am betting on Julia (2014)
by 9981721212 on Monday April 18, 2016 @05:22AM
(#11518646)
Strongly typed and dynamically typed, which means that you can get runtime errors. Also, the "type system" with "dependent types" is really just equivalent to an ML datatype that's dynamically type checked.
I'm a bit mystified with respect to what passes as research in the field of type systems for dynamic languages.
Then why's it positioned as a numerical/datascience language rather than a general-purpose language?
Do you see a contradiction between having a good design and having a specific purpose?
Yes. I think good programming language design is necessarily general, and the best way to achieve that is with a language that's been validated in widely varied domains. Certainly my experience is that specialized languages are consistently worse than general-purpose ones.
Julia is general-purpose, but there is a deliberate orientation towards scientific computing. That's a partly non-technical choice about what is going to be optimized in priority.
https://stackoverflow.com/questions/17433435/what-makes-juli...
That's why I'm betting on the strongly-typed functional tradition - OCaml/Haskell/etc. These language already have the killer feature from this article: they can be (almost) as expressive as Python and (almost) as performant as (naive) C++. But they also have really solid design with a lot of thought put into it that will let them evolve to meet the needs of the future.