Memory-safe systems language. Time-travel debugger. 5× Rust DX. Compiles to native, WASM, or JIT.
Rust is safe. Its memory model prevents entire classes of bugs. But the learning curve kills teams. Lifetimes, borrowing, fighting the borrow checker—it's not that the guarantees aren't worth it. It's that there's a better way.
Instead of explicit lifetimes, KYRx infers them from regions. A region is a scope—everything allocated in a region lives as long as the region. On region exit, everything is freed. No manual drop. No lifetime annotations.
region user_req {
let body = parse(req) // lives in region
let user = db.fetch(body.id) // same region
return render(user) // freed at region end
}
Functions declare what they do: `io`, `alloc`, `panic`, `async`. The compiler tracks effect propagation. Pure functions memoize automatically.
fn pure_hash(s: str) -> u64 // zero effects, auto-memoizes
fn io_log(msg: str) -> void
requires io // declares it needs IO
fn async_fetch(url: str) -> bytes
requires io, async // declares both
Record a deterministic trace of execution. Replay it locally. Step forward, backward, or jump to any breakpoint. Crash in production? Reproduce it exactly.
kyrx-bindgen generates FFI stubs for React, Node, Python, Go, WASM. Share data structs, not just primitives. ABI stable across releases.
Specification: Complete in `/Users/kr/Developer/kyrx/docs/`