game/module -> program, main -> entry, component -> property, archetype -> model, system -> handler. Done via a transitional self-hosting bootstrap: parser accepts both -> reseed -> compiler source moved to new keywords + parser tightened to new-only -> reseed (fixpoint holds). Old keywords now rejected. Token-safe corpus migration (tools/ludic-tools/rename_kw.c) leaves the LLVM @main/entry: labels in emit strings untouched; goldens byte-identical. Editor vocab (header/JetBrains/TextMate/emacs), check-docs wrapper, and doc fences updated; error string 'unknown component' -> 'unknown property'. test.sh 14/14, test-tools 28/0, check-vocabulary green. (Doc prose pass to follow.) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
12 lines
388 B
Text
12 lines
388 B
Text
program T {
|
|
entry {
|
|
let half = 0.5
|
|
let a = 1.5
|
|
print_int(flr(a + half)) # flr(2.0) = 2
|
|
print_int(flr(a * 2.0)) # flr(3.0) = 3
|
|
let third = 1.0 / 3.0
|
|
print_int(flr(third * 3.0)) # ~flr(1.0) = 1 (may be 0 with rounding)
|
|
print_int(flr(fx(5) + a)) # flr(6.5) = 6
|
|
if a > half { print_int(1) } else { print_int(0) } # 1
|
|
}
|
|
}
|