Runtime

KYRx (L1)

Memory-safe systems language. Time-travel debugger. 5× Rust DX. Compiles to native, WASM, or JIT.

The Problem

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.

The Solution: Regions

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
}

Effects System

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

Time-Travel Debugger

Record a deterministic trace of execution. Replay it locally. Step forward, backward, or jump to any breakpoint. Crash in production? Reproduce it exactly.

FFI & Bridges

kyrx-bindgen generates FFI stubs for React, Node, Python, Go, WASM. Share data structs, not just primitives. ABI stable across releases.

Toolchain

Status

Specification: Complete in `/Users/kr/Developer/kyrx/docs/`