Julia 0.2 released
julia seems to be positioned as a kind of matlab / r replacement. but i'm finding it works very well as a faster python, for the kind of programs i am writing in my free time (learning about / analysing block ciphers, most recently).
its big idea is multiple dispatch, like clos (oo-lisp) multimethods. where you would define an "underscores" method in python (ie to extend the language for a new class), in julia you define appropriate functions for that type - the cute thing being that the new type doesn't have to be the first parameter.
so, for example, the equivalent of
would beclass Foo: def __repr__(self): ...
and the end result is something that has more of a FP flavor than python. it's very appealing.function show(io, f::Foo) ... end
if you're looking for a "dynamic scripting" language that takes some of the good bits from static typing, and has decent performance, it's worth a try.
To quote the mailing list announcement [1]:
> We will be supporting a 0.2 line of releases that maintains compatibility with 0.2 with minimally invasive bug fixes, so this is a good time to switch to 0.2 for production systems.
This release was a fairly long time coming from the previous 0.1 stable release. If you've been considering trying Julia out but were worried that it was moving too fast (it's been moving pretty fast), this is a good time to try it out. Not only will the 0.2 release line be supported with minimally invasive bugfixes, but also the 0.3 release is going to largely consist of performance improvements.
[1] https://groups.google.com/forum/#!topic/julia-users/-lh_g9eH...
For anyone interested in using Julia for numerical optimization/mathematical programming, see http://juliaopt.org/.
We have pure-Julia implementations of standard unconstrained methods [1] as well as a domain-specific modeling language [2] for (integer) linear programming with links to open-source and commercial solvers. Julia's performance and advanced language features such as metaprogramming really make it a great language for optimization [3].
[1] https://github.com/JuliaOpt/Optim.jl
I cannot express how much I want this project to succeed! Congratulations and keep it going!
Congratulation to all of you, thrilled to see all the new improvement that will arrive in next version !
I'd love to switch to Julia, but I rely on a lot of packages that are only available in R (e.g. lots from http://bioconductor.org/). Is there any way to call R code from Julia?
After using it for smaller projects, one of the few things I don't like is multidimensional arrays. I would prefer if only arrays of arrays were possible and had some syntax sugar.
Edit: And perhaps some special treatment by the compiler for optimization. I find multi-d arrays counter-intuitive and clumsy on some situations. Also, currently I'm forced to write ugly code like array[x,y][i].
Does anyone know what the state of plotting is in Julia? I couldn't really find any convincing examples for that. For many applications, plotting really is a big requirement.
That said, I look forward to a future where Julia will take over many use cases that are served by Matlab right now.
How suitable is it to use for mainstream programming (building web app, etc)
Congrats on the release to everyone involved; very excited about the future!
This is a dumb question, but is Julia named after anyone in particular?