Semi tangential but some Python libraries abstract away so much yet fail horribly (JAX, numba, etc) that I got fed up enchanting the dark arts needed to install them/run code and learned Julia. Syntax might be wonky at times, but actually feel closer to the machine and its fun to work with 😁
Discussion
I haven’t done a deep dive on Julia. That’s geared towards numerical computing right?
I’m very interested in playing with immutability, especially with an eye towards concurrency.
General purpose language, but definitely a focus on numerical computing. "Flexibility of Python with the speed of C" is the slogan. Functions are JIT compiled with the capacity to introspect into the assembly-like code, benchmark, check memory allocations and type uncertainty.
Personal take on multithreading/multi core /GPU processing - its 🤌(chef's kiss) (**with the caveat that the DL ecosystem is not as mature)
To top it off, you can even call Python libraries from Julia. Meaning - do your high performance stuff in Julia and call Python for any plotting or other statistical functions you'd rather not write yourself.