Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Julia is one of my fav languages. For numerical computing, neither python + numpy, nor matlab come even close. The interop is nuts.

To call, say numpy fft, you just do

using PyCall

np = pyimport("numpy")

res = np.fft.fft(rand(ComplexF64, 10))

No casting back and forth. This is a toy example, julia ofc has fftw bindings.



As of today, how would you compare Julia to the Python ecosystem? Could I use Julia as a "drop-in" replacement for the python scientific stack already?


As I mention above, the interop is really good so you can literally start using it right now without rewriting anything.

The ecosystem is smaller, but the average package quality is higher. It's easier to contribute to packages, since in python, you'd sometimes just end up writing C. Julia packages are generally pure julia.


It can depend on which specific Python packages you're using, but generally speaking the Julia ecosystem is pretty mature for scientific computing and data analysis. And as the GP post demonstrated, you can fill in the gaps by using the awesome PyCall interface to directly call Python code.


For what I do (scientific computing mixed with differential equations, so lots of things like neural partial differential equations which utilize lots of special numerical linear algebra and sparsity handling), the packages exist in Julia but not in Python, MATLAB, or R.


It seems little known, but Matlab has had Python interop since 2015, your code would just be

    res = py.numpy.fft.fft(rand(10,1))




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: