About Kira
Kira as a Zig-hosted compiler and bootstrap toolchain, with a broader frontend surface and a smaller runnable subset.
Kira is a Zig-hosted compiler and bootstrap toolchain.
In this repository, it already includes:
kira_source,kira_lexer,kira_parser,kira_semantics, andkira_ir- a VM backend based on
kira_bytecodeandkira_vm_runtime - an LLVM/native backend based on
kira_llvm_backendandkira_native_bridge - a hybrid runtime that can mix
@Runtimebytecode with@Nativecode in one program - a managed toolchain flow for
kirac, templates, and pinned LLVM bundles - a manifest-driven C ABI FFI workflow with generated Kira bindings
The Language Boundary
Kira's current language story has two layers:
- a frontend surface that parses and models a broad language shape
- an executable subset that is lowered into the shared IR and today's backends
That is why the repo can check richer construct-driven programs such as examples/complex_language_showcase while also proving a smaller, runnable core through examples/hello, the callback examples, and the hybrid/native corpus.
The Compiler-Library Split
The implementation draws an intentional line between compiler mechanisms and library behavior.
The compiler owns:
- parsing
- semantic validation
- executable lowering
- runtime/native orchestration
- toolchain and FFI machinery
Kira source and generated Kira bindings own:
- app code
- construct-defined library shapes
- higher-level framework patterns built on top of the language surface
That is why constructs, builder blocks, lifecycle hooks, and annotations appear in the language book even when the current runnable subset is smaller.