|
|
c0665ba58e
|
Adopt Step 7 language features across SX codebase
112 conversions across 19 .sx files using match, let-match, and pipe operators:
match (17): type/value dispatch replacing cond/if chains
- lib/vm.sx: HO form dispatch (for-each/map/filter/reduce/some/every?)
- lib/tree-tools.sx: node-display, node-matches?, rename, count, replace, free-symbols
- lib/types.sx: narrow-type, substitute-in-type, infer-type, resolve-type
- web/engine.sx: default-trigger, resolve-target, classify-trigger
- web/deps.sx: scan-refs-walk, scan-io-refs-walk
let-match (89): dict destructuring replacing (get d "key") patterns
- shared/page-functions.sx (20), blog/admin.sx (17), pub-api.sx (13)
- events/ layouts/page/tickets/entries/forms (27 total)
- specs-explorer.sx (7), federation/social.sx (3), lib/ small files (3)
-> pipes (6): replacing triple-chained gets in lib/vm.sx
- frame-closure → closure-code → code-bytecode chains
Also: lib/vm.sx accessor upgrades (get vm "sp" → vm-sp vm throughout)
2650/2650 tests pass, zero regressions.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-04 20:49:02 +00:00 |
|
|
|
d40a9c6796
|
sx-tools: WASM kernel updates, TW/CSSX rework, content refresh, new debugging tools
Build tooling: updated OCaml bootstrapper, compile-modules, bundle.sh, sx-build-all.
WASM browser: rebuilt sx_browser.bc.js/wasm, sx-platform-2.js, .sxbc bytecode files.
CSSX/Tailwind: reworked cssx.sx templates and tw-layout, added tw-type support.
Content: refreshed essays, plans, geography, reactive islands, docs, demos, handlers.
New tools: bisect_sxbc.sh, test-spa.js, render-trace.sx, morph playwright spec.
Tests: added test-match.sx, test-examples.sx, updated test-tw.sx and web tests.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-02 11:31:57 +00:00 |
|