go: parse.sx — type assertion v.(T) + minimal type parser + 9 tests [nothing]
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 18s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 18s
Postfix '.' branch now peeks at the next token to disambiguate: .ident → selector / member access (list :select OBJ "field") .(TYPE) → type assertion (list :assert OBJ TYPE) New gp-parse-type covers the minimum types needed for assertions: name → (list :ty-name "int") pkg.Name → (list :ty-sel "pkg" "Name") *T / **T → (list :ty-ptr (list :ty-ptr ...)) Full type grammar — slice []T, array [N]T, map[K]V, chan, func, struct, interface — is a separate Phase 2 sub-deliverable. Type AST shapes are Go-specific tagged lists; the canonical AST kit has no type-system primitives at all yet. Worth a richer kit discussion once Phase 3 (bidirectional type checker) lands and the sister plan static-types-bidirectional has a real surface to react to. parse 70/70, total 199/199. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
# Go-on-SX Scoreboard
|
||||
|
||||
**Total: 190 / 190 tests passing**
|
||||
**Total: 199 / 199 tests passing**
|
||||
|
||||
| | Suite | Pass | Total |
|
||||
|---|---|---|---|
|
||||
| ✅ | lex | 129 | 129 |
|
||||
| ✅ | parse | 61 | 61 |
|
||||
| ✅ | parse | 70 | 70 |
|
||||
| ⬜ | types | 0 | 0 |
|
||||
| ⬜ | eval | 0 | 0 |
|
||||
| ⬜ | runtime | 0 | 0 |
|
||||
|
||||
Reference in New Issue
Block a user