The kardashev Documentation
kardashev is a Rust-flavored systems programming language whose signature
feature is lightweight effect labels in the type system: every function
declares which side effects it can produce (io, alloc, panic, async,
unwind) as part of its signature, and the compiler tracks them across call
chains — pure type-system information, with zero runtime cost. It compiles to
native code through LLVM (an ORC JIT for the REPL and an AOT path for
executables), with Rust-style ownership + non-lexical-lifetime borrow checking.
This site is the reference documentation. It is built from the Markdown in the
docs/ directory
with mdBook and lives next to the
compiler, so each language change updates its docs in the same pull request.
Contents
- Language Reference — the surface syntax and
semantics: types, generics, traits +
impl, ADTs + pattern matching, ownership,Result+?, and the effect-row notation. - Effects System — the signature feature in depth: effect labels, effect-row polymorphism, and how effects propagate across calls.
- Standard Library — the built-in prelude:
Option/Result,Vec/String/HashMap/HashSet/Box, the trait +#[derive]machinery, combinators, and string utilities. - Compiler Architecture — the pipeline from lexer through type/borrow/effect checking to LLVM codegen, monomorphization, and the JIT/AOT backends.
For the project roadmap, build instructions, and source, see the repository README.