Koru v0.1.3
· 3 min read
v0.1.3 is out. 525 commits since v0.1.2, built and packaged by our new release script — which generates this changelog by feeding git log to Claude.
npm install -g @korulang/koru@0.1.3
v0.1.3
Language & Compiler
- Struct keyword, labeled loop scopes, and field shadowing (32681fe)
- Dead strip pass with @retain annotations (cb8ab8c, c0956a8)
- Source location markers in emitted code for debuggability (ec467f7, 7f7ec52)
- Field punning shorthand:
{ c.ast, c.code }→{ ast: c.ast, code: c.code }(7ba7369) - New tap syntax
~tap(source -> dest)with when-clause filtering (multiple commits) - Visibility enforcement for cross-module event calls with ~pub (bfb7ff8)
- Pattern branches for compile-time transform matching (68c3005)
- Directory module system with index.kz (35577b0, 6d8314d)
- Captured block syntax with array indexing (c5c9759, 914dcb2)
- Auto-dispose mode with disable/warn flags (multiple commits)
- Glob event matching for transforms with Levenshtein typo suggestions (0e702cf, 0dba5c3)
Interpreter
- Lightweight flow parser — 144x speedup (ba4a4ba, 071371a)
- Runtime expression evaluator for ~if conditionals (856f355, 929d498)
- For loops and scope-based capability control (caab721)
Build & CLI
--debugand--tinyflags for build mode control (22813b4, a9305d8)- Variant-aware emission with build:config for cross-compilation (d32e8f8)
- Zig package dependencies (c593f30)
- CLI command system with
koruc initandkoruc deps install(0947731, 14ac5ba, ec484c8)
Standard Library
- @koru/sqlite3 — first official library package (8867ac8, 2b2f75f)
args— command-line argument parsing (cf4a42e)rings— ring buffer module (adc95f4)runtime_control— expression evaluator for runtime conditionals (929d498)- Raw I/O fast path for print.ln/print.blk (edcf6c8)
Fixes
- Nested flows (~) inside continuations rejected with clear error (e670726)
- Improved parser error messages (ce3021e, 38409ee, d488295)
- Cross-module type prefixes (?*, []const, etc.) (afd8665)
- Transitive imports in directory modules (8d9b136)
- Parser escaped character handling (22f5e7c, 2927417)
- Prevent backend from overwriting .kz source files (4052551)
- Variable shadowing in if-statement codegen (9d93a97)
- Wildcard tap infinite recursion prevention (da8fd88)
- 40+ additional fixes — see full CHANGELOG
524 commits since initial commit
Koru is an event-continuation language that compiles to Zig. Read the source, or start with Introducing Koru.