Language status
Built from status.json. Last updated (2026-07-24T16:49:03Z).
- Milestone
- M9
- Version
- 0.0.1-dev
- Commit
- unknown
- Features working
- 15 of 27 (15 works · 11 partial · 1 not started)
| Feature | State | Note |
|---|---|---|
| functions | works | Minimal add/main: native exit 5, interpreter return 5 |
| let/var | partial | let+assignment works both paths; var keyword not in KEYWORDS (parse fails) |
| assignment | works | Verified with let x=10; x=x+2; native exit 12, interp 12 |
| if/else | works | Native exit 7, interpreter return 7 |
| while | works | Sum 0..4: native exit 10, interpreter return 10 |
| for | works | C-style for let i=0; i<3; i=i+1: native exit 3, interpreter return 3 |
| arithmetic | works | Native+interp exit/return 37; parenthesized grouping not supported |
| comparisons | works | a > b verified in arithmetic program both paths |
| booleans | works | true/false and bool from comparisons; and/or/not keywords not implemented |
| integers | works | int (32-bit) both paths; int64 is native-only (CastExpr missing in interpreter) |
| strings | partial | Native exit 100 (concat/len/index); interpreter NameError: len |
| arrays | partial | Native exit 33; interpreter lacks MethodCall (.len) |
| structs/class | partial | struct via examples/point.vow exit 7 both paths; class keyword rejected |
| enums | works | examples/shape.vow native exit 24, interpreter return 24 |
| match + exhaustiveness | works | Exhaustive match works; non-exhaustive rejected by typechecker both paths |
| generics | works | examples/option.vow native exit 49, interpreter return 49 |
| Option/Result | works | Prelude Option via examples/option.vow both paths |
| modules/imports | partial | examples/mod_main.vow native exit 42; interpreter run_source has no module loader |
| interfaces | not started | interface Foo rejected by parser |
| print/stdout | partial | Interpreter prints; native CodegenError: print is not yet supported in native codegen |
| no-implicit-conversion | works | int64 + int rejected by typechecker (compile fail / TypeError_) |
| unused-Result error | works | examples/ignored_result.vow type error both paths |
| capabilities (needs/with/--grant) | partial | Caps+--grant: caps_poc exit 3 / 2 verified native; needs/with NOT STARTED; interpreter has no grants |
| contracts (requires/ensures) | partial | withdraw.vow 70 both paths; withdraw_bad traps native only; interpreter returns -40 without checking |
| arena memory + escape analysis | partial | arena_local.vow native exit 9; vow explain shows LOCAL; interpreter has no arenas |
| machine-readable JSON errors | partial | vow check --json emits E_TYPE JSON; CLI/typechecker path (not interpreter eval) |
| vow explain | partial | vow explain examples/arena_local.vow exit 0 prints LOCAL; CLI-only |