Language fronts

39 parser fronts route into one Core IR pipeline. Run in languages or in languages --json to inspect this live from the CLI.

LanguageParserCapabilitiesFrontRuntime / Compilation Status
ininparse, lower, typecheck, boundaryin_lang_parseself-hosted Core IR to textual SIL and in-memory JIT
icoreicoreparse, lower, typecheck, boundarycompiler::icoreself-hosted Core IR to textual SIL and in-memory JIT
Swiftswiftparse, lower, typecheckcompiler::tree_frontCore IR, textual SIL, Boundary IR; Swift runtime is not bundled
Rustrustparse, lower, typecheck, boundarycompiler::rust_frontCore IR and textual SIL; rustc is validation only
Gogoparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL
Vvparse, lower, typecheck, boundarycompiler::tree_frontCore IR and textual SIL
Ccparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; libc/runtime ABI is not bundled
C++cppparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; standard library/runtime ABI is not bundled
Objective-Cobjcparse, lowercompiler::tree_frontCore IR declarations only; Objective-C runtime is not bundled
Objective-C++objc++parse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; Objective-C++ runtime/ABI is not bundled
Javajavaparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; JVM runtime is not bundled
Groovygroovyparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; JVM runtime is not bundled
JavaScriptjavascriptparse, lower, typecheck, boundarycompiler::tree_frontCore IR, Boundary IR, textual SIL, and in-memory JIT; JS runtime is not bundled
TypeScripttypescriptparse, lower, typecheck, boundarycompiler::tree_frontCore IR, Boundary IR, textual SIL, and in-memory JIT; TS checker/runtime is not bundled
Kotlinkotlinparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; JVM runtime is not bundled
Scalascalaparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; JVM runtime is not bundled
C#csharpparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; CLR runtime is not bundled
F#fsharpparse, lowercompiler::tree_frontCore IR declarations only; CLR runtime is not bundled
VB.NETvbparse, lower, typecheck, boundarycompiler::vb_boundaryCore IR and textual SIL; CLR runtime is not bundled
Pythonpythonparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; Python runtime is not bundled
Rubyrubyparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; Ruby runtime is not bundled
PHPphpparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; PHP runtime is not bundled
Perlperlparse, lowercompiler::tree_frontCore IR and textual SIL; Perl runtime is not bundled
Zigzigparse, lower, typecheck, boundarycompiler::tree_frontCore IR and textual SIL; Zig runtime/ABI is not bundled
Dartdartparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; Dart runtime is not bundled
Lualuaparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; Lua runtime is not bundled
Clojureclojureparse, lower, typecheck, boundarycompiler::clojure_boundaryCore IR and textual SIL; JVM runtime is not bundled
Elixirelixirparse, lowercompiler::tree_frontCore IR declarations only; BEAM runtime is not bundled
Erlangerlangparse, lowercompiler::tree_frontCore IR declarations only; BEAM runtime is not bundled
Haskellhaskellparse, lowercompiler::tree_frontCore IR declarations only; Haskell runtime is not bundled
Nimnimparse, lower, typecheck, boundarycompiler::nim_boundaryCore IR and textual SIL; Nim runtime is not bundled
OCamlocamlparse, lower, typecheckcompiler::tree_frontCore IR and textual SIL; OCaml runtime is not bundled
Juliajuliaparse, lowercompiler::tree_frontCore IR declarations only; Julia runtime is not bundled
Rrparse, lowercompiler::tree_frontCore IR declarations only; R runtime is not bundled
Ddparse, lower, typecheck, boundarycompiler::d_boundaryCore IR and textual SIL; D runtime is not bundled
Crystalcrystalparse, lower, typecheck, boundarycompiler::crystal_boundaryCore IR and textual SIL; Crystal runtime is not bundled
Odinodinparse, lower, typecheck, boundarycompiler::odin_boundaryCore IR and textual SIL; Odin runtime is not bundled
Harehareparse, lower, typecheck, boundarycompiler::hare_boundaryCore IR and textual SIL; Hare runtime is not bundled
HolyCholycparse, lowercompiler::tree_front (tree-sitter-holyc)Core IR and textual SIL; TempleOS runtime is not bundled

Resolution

For details on how language/file extensions map to specific parsers, using the IN_PARSER environment variable or shebang resolution directives (e.g. #!in parser=...), see Parser Surface.

Runtime boundary

Owned path is JIT / native_emit on AArch64 and x86_64. External toolchains (rustc, swiftc, …) are optional parity checks in in test --external-parity, not the default execution engine.