Julia: A Fresh Approach to Numerical Computing

Type: Article

Publication Date: 2017-01-01

Citations: 4994

DOI: https://doi.org/10.1137/141000671

Abstract

Bridging cultures that have often been distant, Julia combines expertise from the diverse fields of computer science and computational science to create a new approach to numerical computing. Julia is designed to be easy and fast and questions notions generally held to be “laws of nature" by practitioners of numerical computing: \beginlist \item High-level dynamic programs have to be slow. \item One must prototype in one language and then rewrite in another language for speed or deployment. \item There are parts of a system appropriate for the programmer, and other parts that are best left untouched as they have been built by the experts. \endlist We introduce the Julia programming language and its design---a dance between specialization and abstraction. Specialization allows for custom treatment. Multiple dispatch, a technique from computer science, picks the right algorithm for the right circumstance. Abstraction, which is what good computation is really about, recognizes what remains the same after differences are stripped away. Abstractions in mathematics are captured as code through another technique from computer science, generic programming. Julia shows that one can achieve machine performance without sacrificing human convenience.

Locations

  • SIAM Review - View
  • arXiv (Cornell University) - View - PDF
  • DSpace@MIT (Massachusetts Institute of Technology) - View - PDF

Similar Works

Action Title Year Authors
+ Julia: A Fresh Approach to Numerical Computing 2014 Jeff Bezanson
Alan Edelman
Stefan Karpinski
Viral B. Shah
+ Julia: A Fresh Approach to Numerical Computing 2014 Jeff Bezanson
Alan Edelman
Stefan Karpinski
Viral B. Shah
+ Julia: A Fresh Approach to Numerical Computing 2017 Stefan Karpinski
Viral B. Shah
Jeffrey Werner Bezanson
Alan Edelman
+ Integrating Modern Research into Numerical Computation Education 2007 Chenglie Hu
+ Numerical Algorithmics: Number Under the Rubric of Algorithm 2023 J. L. Nazareth
+ Introduction to Numerical Programming 2014 Titus A. Beu
+ Introduction to numerical computation 1984 J. Thomas King
+ Introduction to numerical computations 1978 James S. Vandergraft
+ Introduction to Mathematica 2021 Jalil Villalobos Alva
+ A Journey through the History of Numerical Linear Algebra 2022 Claude Brezinski
Gérard Meurant
Michela Redivo‐Zaglia
+ Workbook for Numerical methods 2021 Jiří Krček
Zuzana Morávková
+ Numerical Algorithmic Science and Engineering within Computer Science: Rationale, Foundations and Organization 2019 J. L. Nazareth
+ Generating Numerical Algorithms with Computer Algebra 2005 Walter Gander
+ Principles of Numerical Mathematics 2006
+ Overview of Numerical Methods 2021 Mikael Sahrling
+ An introduction to numerical methods with Pascal 1983 L. V. Atkinson
P. J. Harley
+ An introduction to numerical methods 1962 Ronald W. Butler
E. Kerr
+ Introduction to Numerical Methods 1996
+ Introduction to numerical methods 1996 Brian D. Hahn
Ray Kemp
+ Introduction to Numerical Methods 2019 Brian D. Hahn
Daniel T. Valentine