3 ms·
I recently found myself wishing I had the multiple dispatch I’ve heard about in Julia, and it got me curious, especially after seeing the survey results. (It wa
by 6gvONxR4sf7o 4y ago
I recently found myself wishing I had the multiple dispatch I’ve heard about in Julia, and it got me curious, especially after seeing the survey results. (It was python, and I was trying to balance clean clear mypy errors with pythonic code in a particular way). Doing primarily ML, I’ll be really interested to see julia’s ecosystem evolve.
Does anyone have any commentary on how mature it is in terms of sharp edges on a typical julia newbie project? (e.g. setup, tooling, onboarding docs, library docs, error messages, etc)
- krastanov 4y agoThe compilation style of the language could be rather frustrating for first time users: The way the language works is to compile (not interpret) methods on the first time they are encountered at runtime. This can cause quite large latency on first launch (it is extremely fast after that). On the positive side, this style enables all the magic of amazingly fast code (even when using complex abstractions) and fast multiple dispatch. Basically, I am warning you that you will need to find a new style of develop-edit-run for your code, in order to avoid frustrating latency (e.g. using tools like Revise.jl). Otherwise, I am in love with this language and with all the tools developed in it. It is the best language for "scientific" machine learning (i.e. autodiff and optimization over weird models that can hardly be represented as neural nets). It is quite a bit less mature for typical ML.