Cross-host test suite: JS 870/870, Python 679/679 (100% both)
New test files: - test-collections.sx (79): list/dict edge cases, interop, equality - test-scope.sx (48): let/define/set!/closure/letrec/env isolation Python test runner (hosts/python/tests/run_tests.py): - Runs all spec tests against bootstrapped sx_ref.py - Tree-walk evaluator with full primitive env - Skips CEK/types/strict/continuations without --full Cross-host fixes (tests now host-neutral): - cons onto nil: platform-defined (JS: pair, Python: single) - = on lists: test identity only (JS: shallow, Python: deep) - str(true): accept "true" or "True" - (+ "a" 1): platform-defined (JS: coerces, Python: throws) - min/max: test with two args (Python single-arg expects iterable) - TCO depth: lowered to 500 (works on both hosts) - Strict mode tests moved to test-strict.sx (skipped on Python) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
// =========================================================================
|
||||
|
||||
var NIL = Object.freeze({ _nil: true, toString: function() { return "nil"; } });
|
||||
var SX_VERSION = "2026-03-15T12:12:33Z";
|
||||
var SX_VERSION = "2026-03-15T12:23:29Z";
|
||||
|
||||
function isNil(x) { return x === NIL || x === null || x === undefined; }
|
||||
function isSxTruthy(x) { return x !== false && !isNil(x); }
|
||||
|
||||
Reference in New Issue
Block a user