Live data from Hacker News

Some fun with π in Julia

julialang.org

31–40 of 69 posts

Re: Some fun with π in Julia

#31

Genuine question, As a professional developer, why would you restrict yourself to such technology? what we should be asking here is why? give me one scenario where this language is more appropriate than the plethora of other domain specific languages. would you bet your company on such language when there is more mature languages already ?

Are you asking "why do we use scientific languages"? If that's your question, the answer is the same reason that you don't write a webserver in assembly. If you're asking "why Julia versus other languages" it's that, well, Julia is fighting to answer that question for itself. As far as I can tell: - Versus R and Octave: performance, coherent syntax, and more features for writing "programs" instead of just "scripts" -…

It's worth noting that MATLAB is a horrible language despite it's massive success. I feel like I'm baffled by something new in the design every day.

Re: Some fun with π in Julia

#32

Most times a julialang.org blog post is posted to HN, I wonder whether the choice of content is well chosen to spread awareness of and interest in Julia. I write this as a huge Julia fan; I use Julia daily, and it is both my favorite language and the language I know best. So I already think Julia is great. But reading many Julia blogs, especially those from julialang.org, would make me think Julia is only useful for…

> I like Julia because it's extremely fast

...compared to Python, under some circumstances, disregarding startup time.

Don't oversell it. Don't confuse what Julia aspires to be with what it is, or you'll just turn people off when they feel they've been misled. There are extremely fast ahead-of-time-compiled languages that would have finished their computation while Julia is still JIT-ing its kernel.

Re: Some fun with π in Julia

#34

Genuine question, As a professional developer, why would you restrict yourself to such technology? what we should be asking here is why? give me one scenario where this language is more appropriate than the plethora of other domain specific languages. would you bet your company on such language when there is more mature languages already ?

Are you asking "why do we use scientific languages"? If that's your question, the answer is the same reason that you don't write a webserver in assembly. If you're asking "why Julia versus other languages" it's that, well, Julia is fighting to answer that question for itself. As far as I can tell: - Versus R and Octave: performance, coherent syntax, and more features for writing "programs" instead of just "scripts" -…

"Why do we use scientific languages?" is very true.

Applause to the Julia contributors for their work on this innovative language with great out of the box support for modern computer chip architectures. However, they have fibbed to build up momentum, particularly their performance benchmarks. The tests are of compiled Julia with OpenBLAS for the benchmarks against out of the box versions of the other languages. Also, the benchmark code in other languages is with a style that is among the slowest implementations for each language. No seasoned programmer in any of those languages would write code in such a way.

It does seem that there is co-ordination to get Julia posts most attention, timing and upvoting.

Nonetheless, credit where it's due. It should become an awesome language, marketing hacks notwithstanding.

Re: Some fun with π in Julia

#35
post #32

Most times a julialang.org blog post is posted to HN, I wonder whether the choice of content is well chosen to spread awareness of and interest in Julia. I write this as a huge Julia fan; I use Julia daily, and it is both my favorite language and the language I know best. So I already think Julia is great. But reading many Julia blogs, especially those from julialang.org, would make me think Julia is only useful for…

> I like Julia because it's extremely fast ...compared to Python, under some circumstances, disregarding startup time. Don't oversell it. Don't confuse what Julia aspires to be with what it is , or you'll just turn people off when they feel they've been misled. There are extremely fast ahead-of-time-compiled languages that would have finished their computation while Julia is still JIT-ing its kernel.

Julia startup time is 0.5 seconds on a very weak laptop. That's comparable to the JVM, which is nevertheless fairly popular. You may not want to write command line tools in Julia, but there's not much else that's a serious problem since process startup time is rarely that big of a performance issue.

Disregarding JIT time, Julia is as fast as compiled languages – we benchmark against C and Fortran and don't grade on a curve. This is not an aspiration, it's a well-established performance characteristic in both benchmarks [1] and real-world applications [2].

Regarding JIT time, it's important to understand that this is a fixed cost – for any computation that takes long enough to matter, the time taken by JIT will be a negligible fraction of the time. The reason to exclude JIT time when benchmarking is because most benchmarks don't take much time – tens of milliseconds, compared to which JIT is significant. But we don't actually care about the speed of things that only take tens of milliseconds – we're using benchmarks to extrapolate to things that take much longer, which is why you exclude JIT.

[1] http://julialang.org/benchmarks/

[2] http://juliacomputing.com/case-studies/

Re: Some fun with π in Julia

#36

Earlier quoted context omitted.

In R, I can import a CSV, plot a histogram of each column, and fit a linear regression of one column against the others in about 5 minutes and 15 lines of code. In Python, I can do the same thing if I install the Pandas and Statsmodels libraries first. Try that in Ruby, Perl, C++, C, Java, Rust, Haskell, Common Lisp, or just about any language you can think of. Good luck.

The other great thing about R is the amount of information it outputs when you run a stats function.

It's easy to forget that R inhabits a gray area between a full-fledged programming language and a "statistics package" like SAS or SPSS or Stata or GRETL.

Re: Some fun with π in Julia

#37
post #28

Most times a julialang.org blog post is posted to HN, I wonder whether the choice of content is well chosen to spread awareness of and interest in Julia. I write this as a huge Julia fan; I use Julia daily, and it is both my favorite language and the language I know best. So I already think Julia is great. But reading many Julia blogs, especially those from julialang.org, would make me think Julia is only useful for…

What's your working setup with Julia? I'm looking at switching over from MATLAB as soon as the semester is over.

Check out JuliaPro: http://juliacomputing.com/products/juliapro.html

Re: Some fun with π in Julia

#38

Genuine question, As a professional developer, why would you restrict yourself to such technology? what we should be asking here is why? give me one scenario where this language is more appropriate than the plethora of other domain specific languages. would you bet your company on such language when there is more mature languages already ?

Are you asking "why do we use scientific languages"? If that's your question, the answer is the same reason that you don't write a webserver in assembly. If you're asking "why Julia versus other languages" it's that, well, Julia is fighting to answer that question for itself. As far as I can tell: - Versus R and Octave: performance, coherent syntax, and more features for writing "programs" instead of just "scripts" -…

Are you aware that can call R and Python from Julia with practically no overhead? And I mean that both in performance and expressiveness?

Re: Some fun with π in Julia

#39
post #6

I have always been skeptical about 'scientific' languages. Why do you need a special language when any general language + some libraries will do? This is a good example of a feature that only really makes sense in a scientific language.

I would say there's something magical about the way that Julia is structured that makes it more than just a scientific language. I wrote a DSL for Julia for writing clean combinatorial verilog (haven't tackled sequential yet) in 3 days, using lispish macros. It took another 1 day to hook it up to 'verilator' which transpiles the verilog to C and lets you crosscheck it by loading it back up in Julia. https://github.co…

That's really nice. Now we need VHDL.jl as well - maybe different HDL backends could be bolted on? Julia is much better suited for this than Scala due to Julia's macro system.

Re: Some fun with π in Julia

#40

Earlier quoted context omitted.

Are you asking "why do we use scientific languages"? If that's your question, the answer is the same reason that you don't write a webserver in assembly. If you're asking "why Julia versus other languages" it's that, well, Julia is fighting to answer that question for itself. As far as I can tell: - Versus R and Octave: performance, coherent syntax, and more features for writing "programs" instead of just "scripts" -…

"Why do we use scientific languages?" is very true. Applause to the Julia contributors for their work on this innovative language with great out of the box support for modern computer chip architectures. However, they have fibbed to build up momentum, particularly their performance benchmarks. The tests are of compiled Julia with OpenBLAS for the benchmarks against out of the box versions of the other languages. Also…

We use whatever BLAS is linked to in a commonly available official distribution. Julia was one of the first to take this seriously and bundle a high performance BLAS as the default - and I think more projects are following our lead and doing the same. Also, only one benchmark actually uses BLAS.

As for co-ordination on Julia posts - there is none. We submit all our blog posts to HN, and while some do reach the front page, many others do not.

Glad you like Julia and hope this helps.

Post reply on HN