4 ms·
These are what i'd say, as someone who has tinkered with it a lot but uses python/C++ for $day_job: - immature web/network services stack. For better or worse
by fault1 5y ago
These are what i'd say, as someone who has tinkered with it a lot but uses python/C++ for $day_job:
- immature web/network services stack. For better or worse the lang seemed to focus on more number crunching throughput early than reliable distributed data processing, but the latter is a much larger market and what most enterprises care about.
It's the difference between a lang only having Matlab or R ceiling vs python-like ceiling.
- poor static compilation or static analysis story. this is what a lot of people needing to put code in production need.
It's also standard expectation now with a lot of dynamic language code (python or js) that aims to be in production.
- for certain types of realtime uses, more direct control of memory is doable, but you have to jump through hoops. Again, determinism is very important.
- historically, compile times were quite horrid. part of this was llvm, part of it was julia. It's gotten way better in 1.6 and 1.7, but compilation results need to be cached more than just precompilation.
however, all being said, I love the lang! There is a lot going for it especially how the package ecosystem works. There is also a lot of innovative projects.
- 77pt77 5y ago> poor static compilation or static analysis You're comparing it with python.
- fault1 5y agoyes, and python has a large amount of analyzers: https://github.com/typeddjango/awesome-python-typing https://github.com/typeddjango/awesome-python-typing https://github.com/ethanhs/python-typecheckers https://github.com/ethanhs/python-typecheckers though i'd say they are worse than similar tooling in typescript/javascript. julia's tooling is relatively nascent.
- adgjlsfhk1 5y agoJulia has @code_warntype for type checking and Jet.jl for static analysis (and snoopcompile/cthulu for the really advanced stuff). Is there anything those are missing?
- 77pt77 5y agoIf you want those kinds of perks you use a language with a strict typing system, not dynamic typing.