Skip to content

Commit 668de5f

Browse files
hyperpolymathclaude
andcommitted
docs(level-status): mark v1.1 parser TODOs as DONE
The Parser/Checker/Tests columns carried stale TODO markers for parseConstDecl, parseMatchStmt, parseBlockIfExpr, parseSplitEffects, and reserved-keyword rejection. Verification run 2026-04-18: - All 4 parser rules implemented in Parser.res (line refs in table). - Reserved-keyword rejection is contextual per-block (ModuleIsolated, session, choreography, L15-future), with specific error messages at Parser.res:2685-2718. - 88/88 parser tests pass (ParserTests.res, 1602 LOC). No code change — documentation sync only. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent b04e7de commit 668de5f

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

LEVEL-STATUS.md

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,16 @@ natural home for "striation is cheaper" proofs once it lands.
2828

2929
| Feature | Grammar | AST | Lexer | Parser | Checker | Tests |
3030
|---------|---------|-----|-------|--------|---------|-------|
31-
| `const` top-level | spec/grammar.ebnf | Ast.ConstDecl | Const | **TODO** parseConstDecl | Checker.constValueIsLiteral | TODO |
32-
| `match` on union | spec/grammar.ebnf | Ast.MatchStmt | Match | **TODO** parseMatchStmt | Checker.matchIsExhaustive | TODO |
33-
| Block-expr `if` | spec/grammar.ebnf | Ast.BlockIfExpr | Yield | **TODO** parseBlockIfExpr | Checker.blockIfBranchesAgree | TODO |
34-
| Split `effects` | spec/grammar.ebnf | functionDecl.caps | (contextual) | **TODO** parseSplitEffects | (opaque until L15) | TODO |
35-
| `striated` regions | spec/grammar.ebnf | regionDecl.layout | Striated | **DONE** | Checker.striatedLayoutIsWellFormed | TODO |
36-
| Reserved keywords (L13-L16) | spec/L13-L16-reserved-syntax.adoc || ReservedKeyword | **TODO** reject at parser || TODO |
37-
38-
**AST and lexer tokens landed 2026-04-13. Parser rules and Checker module are
39-
the remaining v1.1 work.**
31+
| `const` top-level | spec/grammar.ebnf | Ast.ConstDecl | Const | **DONE** parseConstDecl (Parser.res:2088) | Checker.constValueIsLiteral | **DONE** |
32+
| `match` on union | spec/grammar.ebnf | Ast.MatchStmt | Match | **DONE** (Parser.res:1191) | Checker.matchIsExhaustive | **DONE** |
33+
| Block-expr `if` | spec/grammar.ebnf | Ast.BlockIfExpr | Yield | **DONE** (Parser.res:529) | Checker.blockIfBranchesAgree | **DONE** |
34+
| Split `effects` | spec/grammar.ebnf | functionDecl.caps | (contextual) | **DONE** parseEffectsClause (Parser.res:1554) | (opaque until L15) | **DONE** |
35+
| `striated` regions | spec/grammar.ebnf | regionDecl.layout | Striated | **DONE** | Checker.striatedLayoutIsWellFormed | **DONE** |
36+
| Reserved keywords (L13-L16) | spec/L13-L16-reserved-syntax.adoc || contextual (per-block) | **DONE** (Parser.res:2685-2718) || **DONE** (v1.4/v1.5 rejection tests) |
37+
38+
**v1.1 surface sugar fully landed: parser, checker, tests all live.
39+
88/88 parser tests pass (verified 2026-04-18). LEVEL-STATUS table was stale
40+
between 2026-04-13 (AST landed) and 2026-04-18 (verification).**
4041

4142
## Current: checked core = L1-10 + L13-L16, L11-L12 = draft
4243

0 commit comments

Comments
 (0)