By: Julia Developers
Re-posted from: http://feedproxy.google.com/~r/JuliaLang/~3/tv3e4d-IFiE/julia-0.4-release
We are pleased to announce the release of Julia 0.4.0. This release contains
major language refinements and numerous standard library improvements.
A summary of changes is available in the
NEWS log
found in our main repository. We will be making regular 0.4.x bugfix releases from
the release-0.4 branch of the codebase, and we recommend the 0.4.x line for users
requiring a more stable Julia environment.
The Julia ecosystem continues to grow, and there are now
over 700 registered packages! (highlights below).
JuliaCon 2015 was held in June, and >60 talks are available to view. JuliaCon India will be held in Bangalore on 9 and 10 October.
We welcome bug reports on our GitHub tracker, and general usage questions on the
users mailing list, StackOverflow, and several community forums.
Binaries are available from the
main download page, or visit JuliaBox
to try 0.4 from the comfort of your browser. Happy Coding!
Notable compiler and language news:
- Incremental code caching for packages,
resulting in a major reduction in loading time for Gadfly and other large,
inter-dependent packages. - Generational garbage collector which greatly
reduces GC overhead for many common workloads. - Function call overloading for arbitrary objects
- Generated functions (sometimes known as “staged functions”) introduce finer control
over compile-time specialization.
Docs
and related JuliaCon talk. - Support for documenting user functions and other objects
and retrieving the documentation via the help system. - Improvements in the performance and flexibility of multidimensional abstract arrays,
SubArrays (array views),
and efficient multidimensional iterators. - Inter-task channels for faster communication between parallel tasks
- Tuple type improvements: the type tuple
(A,B)
now writtenTuple{A,B}
. This change has improved the performance of many tuple-related operations, and allowed one to write fixed-size aggregate fields
asfield::NTuple{N,T}
(N
umber of elements of givenT
ype). - Major improvements in Julia’s test coverage and the ability to analyze the test coverage of packages
- The command line (REPL) now supports tab-completion of emoji characters (common LaTeX symbols have been supported since 0.3!)
Upcoming work for 0.5
Nightly builds will use the versioning scheme 0.5.0-dev.
- A major focus of 0.5 will be further (breaking) improvements to core array functionality, as detailed
in this issue. - We plan to merge the threading branch,
but the functionality will be considered experimental and only available as a compile-
time flag for the near future.
Community News
The Julia ecosystem continues to grow, and there are now
over 700 registered packages! (highlights below)
The second JuliaCon was held in Cambridge (USA) in June, 2015.
Over 60 talks were recorded and
are available for viewing.
JuliaCon India will be held in Bangalore on 9 and 10 October.
JuliaBloggers is going strong! A notable recent feature is
the #MonthOfJulia series exploring the core language and a number of packages.
Topical Highlights
JuliaStats – statistical and machine learning community.
JuliaOpt – optimization community.
JuliaQuantum – Julia libraries for quantum-science and technology.
JuliaGPU – GPU libraries and tooling.
IJulia – notebook interface built on IPython.
Images – image processing and i/o library.
Gadfly – Grammar of Graphics-inspired statistical plotting.
Winston – 2D plotting.
JunoLab – LightTable-based interactive environment.