Add comprehensive spec tests: closures, macros, TCO, defcomp, parser

New test files expose fundamental evaluator issues:
- define doesn't create self-referencing closures (13 failures)
- let doesn't isolate scope from parent env (2 failures)
- set! doesn't walk scope chain for closed-over vars (3 failures)
- Component calls return kwargs object instead of evaluating body (10 failures)

485/516 passing (94%). Parser tests: 100% pass. Macro tests: 96% pass.
These failures map the exact work needed for tree-walk removal.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-15 11:19:39 +00:00
parent 237ac234df
commit c20369b766
6 changed files with 1139 additions and 2 deletions

View File

@@ -14,7 +14,8 @@ global.window = global;
global.addEventListener = () => {};
global.self = global;
global.document = {
createElement: () => ({ style: {}, setAttribute: () => {}, appendChild: () => {} }),
createElement: () => ({ style: {}, setAttribute: () => {}, appendChild: () => {}, children: [] }),
createDocumentFragment: () => ({ appendChild: () => {}, children: [], childNodes: [] }),
head: { appendChild: () => {} },
body: { appendChild: () => {} },
querySelector: () => null,