Live data from Hacker News

Julia v0.7.0 Release Notes

github.com

31–40 of 61 posts

Re: Julia v0.7.0 Release Notes

#31
post #19

Earlier quoted context omitted.

Ah, gotcha. Maybe it didn't initially say "Julia Lang"; it does now, perhaps thanks to your comment.

Hehe no. It said "Julia Lang v0.7" but I'm not insider enough to think of Julia the language when I read that. I wondered "Who is Julia Lang? Hmm must be some software?" etc

I'd think that most regular readers of Hacker News would naturally interpret "____ Lang" as referring to a programming language, but clearly there's some ambigutity.

I would have the opposite problem; if a Hacker News item was titled "Fred Lang Has Died", my first thought would be: "I didn't even know there was a programming language called Fred. It must have died from obscurity." :-)

Re: Julia v0.7.0 Release Notes

#32

Earlier quoted context omitted.

When you write code in a C like fashion it can often get as fast or faster than C. Of course it has the disadvatnage of all jit languages that it will likely have slower startup. But when you crunch big chunks of data it should be able to compete with C. Actually want to qualify this a bit. Nothing gets automatically fast by just picking a fast language. That Julia is close to C in performance mainly means it is poss…

Ok thanks. Lately been using Cython with its near-C speed and Python convenience. Just quickly had a look at Julia wiki page, seems like a fast Python, is that fair?

Superficially you could say that, but the design of Julia is such that it is much easier for you to grasp what is going on at the lower levels and the performance implications of the code you write.

Python is much more of a black box, performance wise.

Also something like Cython is radically different from Julia. Cython is compiled to C code. Julia is based on JIT so while you have an interactive session in the REPL, functions are continously compiled as you make them.

Re: Julia v0.7.0 Release Notes

#33
post #15

That heading gives someone who doesn't already know, absolutely no clue what it is or why they should click on it.

when you post a title with a version number next to a project name, people expect it's a new version. So unless your comment is about not describing what Julia is a bit more, suivi might be fair, I don't see the issue

suivi -> which (swype auto correct)

Re: Julia v0.7.0 Release Notes

#34

Earlier quoted context omitted.

Ok thanks. Lately been using Cython with its near-C speed and Python convenience. Just quickly had a look at Julia wiki page, seems like a fast Python, is that fair?

Python doesn't have multiple dispatch though. It's central to making Julia's type system fast. I.e., it's not just loops that are fast, but also code that uses Julia-defined data structures are fast. Additionally, you can write generic code and have it automatically compile fast code for large classes of types. Also, the whole Base library is written in Julia, mostly generically, so this will be compatible with your…

I don't any purpose for Julia, beyond being a language geek, but it surely looks like a kind a of Dylan's 2nd coming, regarding how everything is put together.

Loooking forward how it evolves.

Re: Julia v0.7.0 Release Notes

#35

Earlier quoted context omitted.

I've gotten Cython-like speeds for non-parallelized code in a gradient descent task. I haven't been able to achieve the same speed as parallelized Cython code in Julia using either pmap or @parallel though. I wouldn't say it's a fast Python. Edit: Grammar

You weren't doing the same thing. Julia's `pmap` and `@parallel` are multiprocessing. These will parallelize across multiple computers, like multiple nodes of a cluster. It has much larger scaling potential (it's more like MPI) but at the cost of a larger overhead (like MPI). It for example was used to achieve >1 petaflops in the Celeste.jl application on the Cori supercomputer. Cython's parallelism is via OpenMP whi…

Thanks! From the documentation and all the threads I searched in discourse, it was never clear to me that @parallel and pmap where aiming towards the direction you just described.

I did try Threads.@threads, but the overhead was way too high. I might look into it again soon.

Re: Julia v0.7.0 Release Notes

#36

Earlier quoted context omitted.

You weren't doing the same thing. Julia's `pmap` and `@parallel` are multiprocessing. These will parallelize across multiple computers, like multiple nodes of a cluster. It has much larger scaling potential (it's more like MPI) but at the cost of a larger overhead (like MPI). It for example was used to achieve >1 petaflops in the Celeste.jl application on the Cori supercomputer. Cython's parallelism is via OpenMP whi…

Thanks! From the documentation and all the threads I searched in discourse, it was never clear to me that @parallel and pmap where aiming towards the direction you just described. I did try Threads.@threads, but the overhead was way too high. I might look into it again soon.

Threads.@threads is still consider a bit experimental and there are a few performance pitfalls that one can stumble into. I talked about this for a bit in http://slides.com/valentinchuravy/julia-parallelism, but if you still have issues after reading that feel free to reach out on https://discourse.julialang.org and we will figure out what is going on.

Re: Julia v0.7.0 Release Notes

#37
post #13

That heading gives someone who doesn't already know, absolutely no clue what it is or why they should click on it.

I thought it was a random person's github account because Lang is a common Chinese/Asian name...

It is a far more common western name: https://en.wikipedia.org/wiki/Lang_(surname).

The Chinese Wikipedia entry on the most common form of 'Lang' is anemic in comparison: https://zh.wikipedia.org/wiki/%E9%83%8E%E5%A7%93

Re: Julia v0.7.0 Release Notes

#38

Earlier quoted context omitted.

Ok thanks. Lately been using Cython with its near-C speed and Python convenience. Just quickly had a look at Julia wiki page, seems like a fast Python, is that fair?

Python doesn't have multiple dispatch though. It's central to making Julia's type system fast. I.e., it's not just loops that are fast, but also code that uses Julia-defined data structures are fast. Additionally, you can write generic code and have it automatically compile fast code for large classes of types. Also, the whole Base library is written in Julia, mostly generically, so this will be compatible with your…

This should be in julialang.org frontpage.

Re: Julia v0.7.0 Release Notes

#39
Is there anything in Julia yet or planned, that would allow to specify that "implementations" (in some sense) of an abstract type must provide certain method implementations, which would be checked before any attempt to call a missing function at run time (such as just after all definitions have been read maybe)? I realize that this issue can be thorny under multiple dispatch so maybe no solution is practical. But this is one thing from traditional single-dispatch statically typed OO languages that I really miss.

Re: Julia v0.7.0 Release Notes

#40
post #15

Earlier quoted context omitted.

when you post a title with a version number next to a project name, people expect it's a new version. So unless your comment is about not describing what Julia is a bit more, suivi might be fair, I don't see the issue

I don't know what 'suivi' means. I was just saying, I didn't know what it means. If they're trying to attract new people to it, that title seems a bad choice to me. It seems only insiders understand it. Unfortunately "Julia Lang" sounds to me like a name. It was confusing. Just trying to help.

That style of posting is not uncommon on HN. Some of the recent examples with the exact same structure, from https://hn.algolia.com/?query=%22release%20notes%22&sort=byD... are: "GHC 8.4.1 Release Notes", "Gulp v4.0.0 release notes", "Go 1.10 Release Notes", "Cryptsetup 2.0.0 Release Notes", "MongoDB 3.6 RC release notes", "Android Studio 3.0 Release Notes", "Tmux 2.6 release notes", and "Django 2.0 release notes".

Did you understand what all of those meant? Probably not. I don't.

But your lack of understanding doesn't make it notable.

Post reply on HN