What is Julia written in?

Julia is self-hosting: its compiler is written in Julia itself.

Julia is a high-performance dynamic programming language, first released in 2012.

Implementation

LayerWritten inNotes
CompilerJulia (since 2018)Julia increasingly self-hosting, parser moving from FemtoLisp
RuntimeLLVM (since 2012)Julia uses LLVM for JIT compilation
BootstrapFemtoLisp (since 2012)Julia parser frontend was FemtoLisp until v1.10
RuntimeC (since 2012)Julia runtime partially written in C
RuntimeC++ (since 2012)Julia runtime includes C++ components

Self-hosting

Julia is a self-hosting language: its compiler is written in Julia itself. Self-hosting means the compiler can compile its own source code, which is a milestone in a language's maturity. New versions of the compiler are built using an older version of the same compiler, a process called bootstrapping.

Self-hosting also acts as a practical stress test: if a language can compile its own compiler, most core language features have been validated in a complex, real-world workload. See what is compiler bootstrapping for a full explanation.

Explore in the Graph

See Julia's full lineage, including all implementation and influence relationships, in the interactive graph.

Open Interactive Graph →

Or view the Julia language page for the complete record.

Related Pages