Koru v0.1.4
· 2 min read
v0.1.4 is out. A focused release built on top of v0.1.3’s infrastructure — tightening phantom type semantics, expanding the kernel stdlib, and crossing 506 passing regression tests.
npm install -g @korulang/koru@0.1.4
v0.1.4
Phantom Types
- Per-member
!discharge markers in union types.[!opened|!closing]now means each member carries its own obligation discharge —!attaches to the state it precedes, not the whole union.[!opened|closing]is a valid mixed union: dischargeopened, just acceptclosing. The old union-level!prefix has been removed entirely, eliminating a class of silent semantic bugs. (e1c48bb)
Kernel & Standard Library
Koru’s kernel is a high-performance computation kernel — think numerical/SIMD workloads, not OS kernel.
kernel.selfcomptime transform for per-element iteration over kernel data (373bd31)pairwiseouter-range support with ForeachNode fusion (b82e8d0)noaliasinline fn wrapper for pairwise codegen — better aliasing guarantees for the optimizer (1e811c0)- Library-owned loops are now tappable from user code (cfe6427)
:fformat specifier added; time stdlib simplified (d1cbf60)- Bare expressions auto-wrapped in
print_ln(dbe8631)
Compiler
- Optional
?Expressionparams in comptime transforms (3a5abab)
Fixes
- All-optional catch-all branch in continuation emitter (3be1495)
parseEventInvocationreused for source block arg parsing (a80ed2c)
506 regression tests passing — all-time high.
Koru is an event-continuation language. Read the source, or start with Introducing Koru.