Live data from Hacker News

Why Julia

ucidatascienceinitiative.github.io

1–10 of 257 posts

Re: Why Julia

#3

As someone who has never run into performance problems with R, and also knows how to use Python - is there a good reason to learn Julia?

Think about it a moment, which answer would you prefer?

Re: Why Julia

#4
post #3

As someone who has never run into performance problems with R, and also knows how to use Python - is there a good reason to learn Julia?

Think about it a moment, which answer would you prefer?

Regardless of the answer, I have plans to learn it simply out of curiosity. I'm just not yet convinced that there are any practical benefits to using Julia over the other languages.

Re: Why Julia

#5
post #3

Earlier quoted context omitted.

Think about it a moment, which answer would you prefer?

Regardless of the answer, I have plans to learn it simply out of curiosity. I'm just not yet convinced that there are any practical benefits to using Julia over the other languages.

As you said yourself, you have no performances problem with R and Python, so I do not think you need to learn Julia.

However, in fields dealing with larger datasets (e.g. genetics, astrophysics, ...), Python and R are real bottlenecks in data processing pipelines, and are thus often replaced by programs in C/C++/Java/etc. Having a language with the expressiveness and dynamism of Julia on the one hand, and performances in the same order of magnitude than C++ in the other hand is a huge plus.

Re: Why Julia

#6
> it's faster than other scripting languages

That certainly depends on your use case. For instance, the launch time is ridiculously slow, so that you cannot realistically run a small matrix computation in julia from within a shell loop. It is better to use octave for that, where the startup time is almost negligible (just a bit slower than starting a subshell).

Re: Why Julia

#7

As someone who has never run into performance problems with R, and also knows how to use Python - is there a good reason to learn Julia?

Multiple dispatch and meta programming are both wonderful, irrespective of speed benefits.

For example, compare linear algebra syntax in Julia with those in R and Python.

Plus, the flexibility of multiple dispatch applying equally well to any of your own types really makes it feel like you can do anything in Julia.

Metaprogramming, writing code that writes code, can take a while to get used to. But is extremely powerful.

A final point I will make is comparability of Julia code. If you want to for a Bayesian model or solve a differential equation in Julia, you can mix your own types and code and any generically written library code at will, and it will often just work. In R, you're not likely to find that; your Stan code can't call R functions you've written or those from your favorite libraries.

Re: Why Julia

#8
I recently began learning Julia and initially everything was amazing, except for 1 based indexing but with everything else I could overlook that. Then I attempted building something medium sized and it all fell apart. I feel like it needs some serious work on tooling, the module system, packages, etc.

Has anyone built something medium-large sized in Julia? Maybe I'm missing something. When I was trying to use modules to organize my code the response I got was that modules are more trouble than they are worth so just don't use them. So why do they even exist? That really put me off from Julia despite really liking it otherwise.

I would want to build things with it not just play in a REPL and notebooks.

Re: Why Julia

#10
post #7

As someone who has never run into performance problems with R, and also knows how to use Python - is there a good reason to learn Julia?

Multiple dispatch and meta programming are both wonderful, irrespective of speed benefits. For example, compare linear algebra syntax in Julia with those in R and Python. Plus, the flexibility of multiple dispatch applying equally well to any of your own types really makes it feel like you can do anything in Julia. Metaprogramming, writing code that writes code, can take a while to get used to. But is extremely power…

Multiple dispach and meta programming are available in python as well. Although duck typing is usually a better solution and it's not really a killer feature to data analysts anyway.

Compared to python, i'd say julia has the reputation for being generally faster for things you can't use numpy with, and you can more easily scale multiple cpu or machines.

Post reply on HN