Files
rose-ash/shared/static/wasm/sx/module-manifest.json
giles fc2b5e502f Step 5p6 lazy loading + Step 6b VM transpilation prep
Lazy module loading (Step 5 piece 6 completion):
- Add define-library wrappers + import declarations to 13 source .sx files
- compile-modules.js generates module-manifest.json with dependency graph
- compile-modules.js strips define-library/import before bytecode compilation
  (VM doesn't handle these as special forms)
- sx-platform.js replaces hardcoded 24-file loadWebStack() with manifest-driven
  recursive loader — only downloads modules the page needs
- Result: 12 modules loaded (was 24), zero errors, zero warnings
- Fallback to full load if manifest missing

VM transpilation prep (Step 6b):
- Refactor lib/vm.sx: 20 accessor functions replace raw dict access
- Factor out collect-n-from-stack, collect-n-pairs, pad-n-nils helpers
- bootstrap_vm.py: transpiles 9 VM logic functions to OCaml
- sx_vm_ref.ml: proof that vm.sx transpiles (preamble has stubs)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 12:18:41 +00:00

133 lines
2.2 KiB
JSON

{
"sx render": {
"file": "render.sxbc",
"deps": []
},
"sx signals": {
"file": "core-signals.sxbc",
"deps": []
},
"sx signals-web": {
"file": "signals.sxbc",
"deps": [
"sx dom",
"sx browser"
]
},
"web deps": {
"file": "deps.sxbc",
"deps": []
},
"web router": {
"file": "router.sxbc",
"deps": []
},
"web page-helpers": {
"file": "page-helpers.sxbc",
"deps": []
},
"sx freeze": {
"file": "freeze.sxbc",
"deps": []
},
"sx bytecode": {
"file": "bytecode.sxbc",
"deps": []
},
"sx compiler": {
"file": "compiler.sxbc",
"deps": []
},
"sx vm": {
"file": "vm.sxbc",
"deps": []
},
"sx dom": {
"file": "dom.sxbc",
"deps": []
},
"sx browser": {
"file": "browser.sxbc",
"deps": []
},
"web adapter-html": {
"file": "adapter-html.sxbc",
"deps": [
"sx render"
]
},
"web adapter-sx": {
"file": "adapter-sx.sxbc",
"deps": [
"web boot-helpers"
]
},
"web adapter-dom": {
"file": "adapter-dom.sxbc",
"deps": [
"sx dom",
"sx render"
]
},
"web boot-helpers": {
"file": "boot-helpers.sxbc",
"deps": [
"sx dom",
"sx browser",
"web adapter-dom"
]
},
"sx hypersx": {
"file": "hypersx.sxbc",
"deps": []
},
"sx harness": {
"file": "harness.sxbc",
"deps": []
},
"sx harness-reactive": {
"file": "harness-reactive.sxbc",
"deps": []
},
"sx harness-web": {
"file": "harness-web.sxbc",
"deps": []
},
"web engine": {
"file": "engine.sxbc",
"deps": [
"web boot-helpers",
"sx dom",
"sx browser"
]
},
"web orchestration": {
"file": "orchestration.sxbc",
"deps": [
"web boot-helpers",
"sx dom",
"sx browser",
"web adapter-dom",
"web engine"
]
},
"_entry": {
"file": "boot.sxbc",
"deps": [
"sx dom",
"sx browser",
"web boot-helpers",
"web adapter-dom",
"sx signals",
"sx signals-web",
"web router",
"web page-helpers",
"web orchestration",
"sx render"
],
"lazy_deps": [
"sx bytecode"
]
}
}