[About Python 3.5, that was really a pointer for Tim Holy..* ]
Thanks for answering, and confirming what I thought. You'll don't really
have to read further, I got the message that julia-users might not be
the best place, I just posted again because there was an answer.
I didn't really think Go could be theoretically better, it seems Julia
already has what Go can do or at least, few things missing, could add
added to Julia. That is, they have SMP threads and Julia only green
threads, but the former a requirement for N:M threading, while N:M
threading in itself isn't a strict requirement for anything (only to get
more concurrency). I'm not to familiar with goroutines vs. coroutines,
and see that Channels have been added in Julia.
Parallelism, concurrency and threads with shared state, are a can of
worms.. and I'm not an expert and just thinking what the right
abstractions are in a language and if Julia has them or at least doesn't
rule them out (I don't think there is a good reason to stay away from
Julia).
I understand Haskell is supposed to be better for parallel because it is
a pure functional language. Easier to prove your program right (same
with Erlang). And allows software transactional memory (STM). I wander
what the truth is, as mutable state can also be good.. at least when you
use more than half of your memory, then sorting in-place is good.. And
Lazy.jl (that I've not really looked at) might allow all that Haskell
has to offer?
Would Julia be better for HPC/parallel and other languages (always be)
better for some other things - e.g. concurrent..
Julia also has immutability (strings) and functions ending in ! (not
enforced.. at least yet). Maybe they allow all the benefits a pure
functional language could potentially have?
By supervision, what do you mean? I understand Erlang has stuff like hot
loading of new code, allowing a new versions of your code with older
(one version back) still running. Java even has hot-loading (not this
fancy?) and I assume Julia could do the same and all the fault-tolerence
features, but it has just not been implemented yet..
* When I saw Python 3.5 was out, that was the original reason for this
post.. then it snowballed.. Note, also that it added a @ operator for
matrix multiply. At least Python 3.5 should work with Julia for all old
code I assume.. Or maybe even new, without needing any fixes in PyCall.