Hacker News new | ask | show | jobs
by Fede_V 4217 days ago
Because Julia has been carefully designed to allow functions to compile down to very fast machine code. There are a few important design choices that are necessary to make it possible to do this (type stability, etc) - there are a few talks about the design principles that went into making Julia.

However, numerical Python can be nearly as fast as C as well with very, very little additional work (using Numba means adding @jit on top of a function). The downside is that Numba only works on the 'numpy' subset of Python, basically.

1 comments

Sounds like snake oil to me.
You could, of course, just download a Julia distribution, fire up the interpreter and see for yourself. But I'm sure unfounded snark is much, much better.
If you want to know the catch, it is that it has high latency at first run, and requires a full compiler at runtime. It is optimized for numerical work, where the long runtime make slow startup irrelevant and low latency is easily amortized.

But if you are suspicious, there are introspection utilities that let you see the generated native code. Give it a try.

As I understand it there's a plan to produce stand-alone binaries downstream, with no compiler needed at runtime.

It's using LLVM on the backed, so it should be quite possible.