Assume mainstream adoption as used by around 7% of all github projects
Personally, I’d like to see Nim get that growth.
I personally find multiple dispatch far more challenging to use than OOP. I’d reach for Torch over Flux any day.
Although, I really like that the majority of the Flux stack is Julia rather than a collection of Cpp.
What do you find challenging about multiple dispatch? I don’t use Julia for my job, so I can’t say I’ve had enough experience to have a strong opinion. MD seems like a valuable tool though.
Simply, the lsp is far less useful. An object might have a dozen methods that act like verbs or some attributes that act as adjectives.
In Julia there is a huge number of functions, that work differently for different types and different combinations of types. So finding the documentation involves finding the right name for a function that does different things for different types, then scrolling down the docs for the the behaviour that corresponds to the specific combination of inputs.
I moved from R/Py to Julia for a while before moving back to Py (and a little bit of Rust).
I love how fast Julia is and the 1-index is fine for me, but I still prefer py for the oop.
So there’s no LSP function to just show all of the multi-methods that accept a specific type? That’s a pretty serious tooling limitation.
Maybe Julia sounds better in theory than in practice, if the tooling still isn’t ready for production use.
Well it’s there, in one loooong print out. It’s not as bad as I’m making it out to be, however, I went back to python unfortunately.
The crucial issue with Julia, no error messages.
So I use Julia for things that need to be fast (e.g. moving hdf5 to SQL and ffts) but I use python for everything else (except ggplot).