What is Julia written in?
The Julia compiler is written in Julia (documented). Its runtime is implemented in LLVM, C, and C++ (documented). Julia uses a bootstrap chain from FemtoLisp (documented). Julia is self-hosting.
Relationship Graph
All directly connected languages. Click any node to navigate to its page.
Compiler Implementation
| Language | Confidence | Notes | Source |
|---|---|---|---|
| Julia | 85% | Julia increasingly self-hosting, parser moving from FemtoLisp | Source |
Runtime Implementation
| Language | Confidence | Notes | Source |
|---|---|---|---|
| LLVM | 95% | Julia uses LLVM for JIT compilation | Source |
| C | 90% | Julia runtime partially written in C | Source |
| C++ | 90% | Julia runtime includes C++ components | Source |
Bootstrap Chain
| Language | Confidence | Notes | Source |
|---|---|---|---|
| FemtoLisp | 90% | Julia parser frontend was FemtoLisp until v1.10 | Source |
Influenced By
- MATLAB — Julia influenced by MATLAB's scientific computing
- Python — Julia creators cited Python as key influence
- Fortran — Julia creators cited Fortran's numeric performance
- APL — Julia's array operations influenced by APL
- Ruby — Julia influenced by Ruby's syntax expressiveness
- Racket — Julia influenced by Racket's macro system
- Lisp — Julia uses Lisp-style macros
Frequently Asked Questions
What language is Julia written in?
Julia is primarily implemented in Julia and LLVM and FemtoLisp and C and C++. See the implementation section above for details and source references.
What languages influenced Julia?
Julia was influenced by Python, Fortran, Lisp among others. See the influence section above for the full list.
Is Julia self-hosting?
Yes, Julia is self-hosting — its compiler can compile itself.
Evidence Sources
- https://julialang.org/blog/2012/02/why-we-created-julia/
- https://github.com/JuliaLang/julia
- https://julialang.org/
- https://discourse.julialang.org/t/the-role-of-femtolisp-in-julia/
- https://en.wikipedia.org/wiki/Julia_(programming_language)