Julia (programming language)
high-performance dynamic programming language From Wikipedia, the free encyclopedia
Julia is a high-performance programming language, which is also meant to be easy (was considered a contradictory goal before), originally made with technical computing or with science in mind (like MATLAB), but it's a fully general-purpose language similar to e.g. Python, can be used for e.g. web development to building artificial intelligence.
![]() | |
Paradigm | Multi-paradigm: multiple dispatch (primary paradigm), procedural, functional, meta, multistaged[1] |
---|---|
Designed by | Jeff Bezanson, Alan Edelman, Stefan Karpinski, Viral B. Shah |
Developer | Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and other contributors[2][3] |
First appeared | 2012 |
Stable release | 1.11.5[4] / 14 April 2025 and 1.10.9 LTS[5] / 10 March 2025 |
Typing discipline | Dynamic,[6] strong,[6] nominative, parametric, optional |
Implementation language | Julia, C, C++, LLVM;[7] Scheme |
Platform | Tier 1: x86-64, IA-32, Apple silicon (ARM64) Macs; Nvidia GPUs/CUDA (on Linux)[8] Tier 2: FreeBSD, 64-bit Arm on Linux, Apple GPUs; Intel GPUs/OneAPI 6.2+ and Nvidia GPUs (on Windows) Tier 3: 32-bit Arm, 64-bit RISC-V, and AMD GPUs/ROCm 5.3+. |
OS | Linux, macOS, Windows and FreeBSD |
License | MIT[2] |
Filename extensions | .jl |
Website | JuliaLang.org |
Julia is a high-level language, which means a programmer can focus on what to do, but does not require knowledge of computer hardware. Writing programs in Julia takes less time than in some other languages.
Some state-of-the-art software has already been written in Julia, because it's considered easier to do then in the other popular languages. Some of it can also be used from other languages like Python or R. Julia was designed to be unusually easy to work with other languages, i.e. to benefit from code already written in other languages, to "reuse" their code.
Julia drew inspiration from other programming languages like Python, MATLAB, R, Ruby, Perl, Mathematica, Lisp, and C.
Julia works on the Raspberry Pi computer, and is e.g. supported in Raspbian.[9]
Julia is supported by notebooks like Pluto.jl, Jupyter, and since 2025 Google Colab supports Julia natively.
It is recommended to install Julia with juliaup (which installs and takes care of Julia version updates), it is recommended NOT to install Julia through Linux distro's package managers. Juliaup is available in the Microsoft Store under the name Julia, which installs both.
Some technical details
Julia is a high-level, high-performance, dynamic programming language. While it is a general-purpose language and can be used to write any application, many of its features are well suited for numerical analysis and computational science.[10][11][12][13]
Distinctive aspects of Julia's design include multiple dispatch as its core programming paradigm. Julia supports concurrent, (composable) parallel and distributed computing. Julia uses a just-in-time (JIT) compiler, as Julia compiles code to machine code before running it.[14][15]
Julia is garbage-collected,[16] and includes efficient libraries for floating-point calculations, linear algebra, random number generation, and regular expression matching.
Julia supports calling C (and also e.g. Fortran or Rust) without glue code, using the keyword ccall
. But it's also possible to call e.g. C++, Python, Java, MATLAB and R with help of Julia libraries for that purpose, and it's also possible to use those languages to call Julia, to reuse Julia libraries (that some of are state-of-the-art, such as SciML, made for scientific machine learning, which includes e.g. that DifferentialEquations.jl package).
References
Further reading
Other websites
Wikiwand - on
Seamless Wikipedia browsing. On steroids.