What is Julia written in?
Julia is a high-performance dynamic programming language, first released in 2012.
Implementation
| Layer | Written in | Notes |
|---|---|---|
| Compiler | Julia (since 2018) | Julia increasingly self-hosting, parser moving from FemtoLisp |
| Runtime | LLVM (since 2012) | Julia uses LLVM for JIT compilation |
| Bootstrap | FemtoLisp (since 2012) | Julia parser frontend was FemtoLisp until v1.10 |
| Runtime | C (since 2012) | Julia runtime partially written in C |
| Runtime | C++ (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.