« Previous 1 2 3 4
Julia: Fast as Fortran, easy as Python
Tech-Speak
The Future of Scientific Computing
Julia was designed with the scientific and technical numericist in mind. I've only had space to scratch the surface of what this young language offers to the programmer who requires the generation of highly efficient code but would also like to take advantage of the sophisticated abstractions offered by modern, high-level dynamic languages.
To this end, Julia incorporates a complete metaprogramming system, including powerful, Lisp-like macros, an elaborate type system, the ability to examine generated machine instructions, and more. Its facilities for parallel and distributed computing, which are part of its standard library, are unmatched in their ease of use, allowing you to take advantage of multiple cores on a single machine, supercomputing clusters, or a heterogeneous network of computers with almost no additional code. For more information on these topics, the extensive online manual [7] is a good place to start, although after the first few chapters, its explanations can become far too terse. Fortunately, the Julia community page [8] contains a good list of resources for help and information.
Julia is a free software success story developed in the open, on GitHub, with more than 700 contributors, many of whom are the scientists and engineers who use the language in their research. It is in use at hundreds of universities and companies and, especially after its 1.0 release, is experiencing rapid adoption [9] by a community of enthusiastic users.
Julia may represent the holy grail of a language that does not compromise in performance, while demanding no more of the programmer than a dynamic scripting language and offering the sophisticated user the fruits of academic computer science. Julia may represent what was once thought impossible: a language that is as easy as Python but as fast as Fortran.
Infos
- "Scientific computing's future" by Lee Phillips, Ars Technica , May 7, 2014, http://arstechnica.com/science/2014/05/scientific-computings-future-can-any-coding-language-top-a-1950s-behemoth/ (accessed October 10, 2018)
- NumPy: http://www.numpy.org/ (accessed October 19, 2018)
- Bezanson, J., A. Edelman, S. Karpinski, and V. B. Shah. Julia: A fresh approach to numerical computing. SIAM Review 2015;59(1):65-98. doi:10.1137/141000671
- The Julia programming language: http://julialang.org/ (accessed October 19, 2018)
- Julia micro-benchmarks: https://julialang.org/benchmarks/ (accessed October 19, 2018)
- Julia Observer: https://juliaobserver.com/ (accessed 20 10, 2018)
- Julia 1.0 documentation: https://docs.julialang.org/en/v1.0/ (accessed March 18, 2019)
- Julia community page: https://julialang.org/community/
- "Possible python rival?" by Liam Tung, ZDNet , August 16, 2018: https://www.zdnet.com/google-amp/article/possible-python-rival-programming-language-julia-is-winning-over-developers/ (accessed October 20, 2018)
« Previous 1 2 3 4
Buy this article as PDF
(incl. VAT)