Commit Graph

  • 6417d15e60 Merge branch 'ocaml-vm' main giles 2026-03-25 01:21:00 +00:00
  • 99e2009c2b Fix sx_docs Dockerfile: install dune + set PATH for OCaml build giles 2026-03-25 01:20:48 +00:00
  • 73810d249d Merge branch 'ocaml-vm' giles 2026-03-25 00:59:50 +00:00
  • 1ae5906ff6 Skip Playwright in deploy (needs running server) giles 2026-03-25 00:49:50 +00:00
  • 2bc1aee888 Merge branch 'ocaml-vm' giles 2026-03-25 00:36:57 +00:00
  • 4dfaf09e04 Add lib/ to CI test Dockerfile giles 2026-03-25 00:36:57 +00:00
  • 7ac026eccb Merge branch 'ocaml-vm' giles 2026-03-25 00:35:06 +00:00
  • b174a57c9c Fix spec/freeze.sx → lib/freeze.sx in CI test scripts giles 2026-03-25 00:35:06 +00:00
  • 1b5d3e8eb1 Add spec/, lib/, web/ to sx_docs Docker image giles 2026-03-25 00:31:56 +00:00
  • 0fce6934cb Use dom-on for event handlers; add CI config and stepper Playwright test giles 2026-03-25 00:19:35 +00:00
  • 7d7de86034 Fix stepper client-side [object Object] flash and missing CSSX styles giles 2026-03-25 00:11:06 +00:00
  • f3f70cc00b Move stdlib out of spec — clean spec/library boundary giles 2026-03-24 23:18:30 +00:00
  • 50871780a3 Add call-lambda + trampoline handler tests for dom-on pattern giles 2026-03-24 22:37:21 +00:00
  • 57cffb8bcc Fix isomorphic SSR: revert inline opcodes, add named let compilation, fix cookie decode giles 2026-03-24 22:32:51 +00:00
  • eb4233ff36 Add inline VM opcodes for hot primitives (OP_ADD through OP_DEC) giles 2026-03-24 20:10:48 +00:00
  • 5b2ef0a2af Fix island reactivity: trampoline callLambda result in dom-on handlers giles 2026-03-24 19:26:43 +00:00
  • 32df71abd4 Add 21 demo interaction + health check Playwright tests giles 2026-03-24 19:08:55 +00:00
  • 91cf39153b Add promise-delayed SSR stub; fix startup JIT DISABLED noise giles 2026-03-24 18:39:48 +00:00
  • 953f0ec744 Fix handler aser keyword loss: re-serialize evaluated HTML elements giles 2026-03-24 18:37:21 +00:00
  • 13ba5ee423 Unify JIT to lazy-only: remove allowlist, all lambdas compile on first call giles 2026-03-24 18:34:27 +00:00
  • a6e0e84521 Split setup_type_operations into 6 focused functions giles 2026-03-24 18:31:37 +00:00
  • 3ae49b69f5 Fix env-shadowing: rebind host extension points after .sx file load giles 2026-03-24 18:29:29 +00:00
  • 2d8741779e Fix transpiler call-expression bug: ((get d k) args) now emits function call giles 2026-03-24 18:24:45 +00:00
  • 945b4c1dd7 Add failing Playwright tests for handler response rendering bug giles 2026-03-24 18:18:36 +00:00
  • 33af6b9266 Fix serialize_value for SxExpr/Spread; handle List-of-SxExpr in aser output giles 2026-03-24 18:16:33 +00:00
  • c8280e156f Add comprehensive Playwright tests for all geography demos (61 tests) giles 2026-03-24 17:50:48 +00:00
  • 732d733eac Fix island reactivity lost on client-side navigation; add Playwright tests giles 2026-03-24 17:36:51 +00:00
  • 3df8c41ca1 Split make_server_env, eliminate all runtime sx_ref imports, fix auth-menu tests giles 2026-03-24 17:23:09 +00:00
  • 6ef9688bd2 Fix primitive? lookup + replace coercion; remove debug output giles 2026-03-24 16:29:52 +00:00
  • f9f810ffd7 Complete Python eval removal: epoch protocol, scope consolidation, JIT fixes giles 2026-03-24 16:14:40 +00:00
  • e887c0d978 Fix defisland→Component bug in jinja_bridge; add island reactivity test giles 2026-03-24 15:48:19 +00:00
  • 7434de53a6 Add OCaml bridge integration test for custom special forms giles 2026-03-24 15:18:20 +00:00
  • d735e28b39 Delete sx_ref.py — OCaml is the sole SX evaluator giles 2026-03-24 14:32:55 +00:00
  • 482bc0ca5e Remove Python SX tests from run-tests.sh — sx_ref.py being eliminated giles 2026-03-24 13:46:32 +00:00
  • aa88c06c00 Add run-tests.sh unified test runner; register log-info/log-warn as PRIMITIVES giles 2026-03-24 13:31:35 +00:00
  • ee868f686b Migrate 6 reactive demo handlers from Python f-strings to SX defhandlers giles 2026-03-24 13:26:25 +00:00
  • 96f2862385 Fix island rendering in OCaml test runner — add Island cases to component accessors giles 2026-03-24 12:55:47 +00:00
  • 26e16f6aa4 Move defstyle/deftype/defeffect to web-forms.sx — domain forms, not core giles 2026-03-24 12:22:08 +00:00
  • 9caf8b6e94 Fix runtime PRIMITIVES for dom/browser library functions giles 2026-03-24 12:10:54 +00:00
  • 8e6e7dce43 Transpile dom.sx + browser.sx into bundle; add FFI variable aliases giles 2026-03-24 11:43:42 +00:00
  • bc7da977a0 Platform FFI reduction: remove 99 redundant PRIMITIVES registrations giles 2026-03-24 11:25:51 +00:00
  • efb2d92b99 Transpiler: emit NativeFn for SX lambdas, bare OCaml for HO inlines giles 2026-03-24 10:28:28 +00:00
  • 89543e0152 Fix modifier-key click guard in orchestration verb handler giles 2026-03-24 10:17:18 +00:00
  • 0c7567925e Align OCaml parser with spec/parser.sx character classification giles 2026-03-24 10:13:03 +00:00
  • 2a9a4b41bd Stable extension point for definition-form? — no monkey-patching giles 2026-03-24 10:06:05 +00:00
  • 8a08de26cd Web extension module for def-forms + modifier-key clicks + CSSX SSR fix giles 2026-03-24 10:01:41 +00:00
  • 8ccf5f7c1e Stepper: steps-to-preview for isomorphic preview text (WIP) giles 2026-03-24 04:24:12 +00:00
  • bf305deae1 Isomorphic cookie support + stepper cookie persistence giles 2026-03-24 04:13:53 +00:00
  • e021184935 Stepper: isomorphic code highlighting + steps-to-preview (WIP) giles 2026-03-24 03:37:27 +00:00
  • 55061d6451 Revert boot.sx CSSX flush — client morph needs different approach giles 2026-03-24 02:57:23 +00:00
  • ce9c5d3a08 Add scope-collected/scope-clear-collected!/scope-emitted primitives giles 2026-03-24 02:50:23 +00:00
  • 49fd4a51d6 Remove debug logging from component-has-children?, restore island test giles 2026-03-24 02:36:46 +00:00
  • 7d793ec76c Fix CSSX styling: trampoline wiring + scope-emit!/emitted for adapter-html.sx giles 2026-03-24 02:23:00 +00:00
  • e4cabcbb59 Fix env-merge for Dict/Nil args + add adapter-html.sx primitives giles 2026-03-24 01:49:21 +00:00
  • 284572c7a9 Wire adapter-html.sx into OCaml server, replacing hand-written renderer giles 2026-03-24 01:38:18 +00:00
  • 70a58bddd8 Exhaustive HTML render tests — 143 tests for adapter-html.sx giles 2026-03-24 01:29:59 +00:00
  • 23c8b97cb1 VM spec in SX + 72 tests passing on both JS and OCaml giles 2026-03-24 01:20:00 +00:00
  • 5270d2e956 JIT allowlist + integration tests + --test mode + clean up debug logging giles 2026-03-23 23:58:40 +00:00
  • dd057247a5 VM: VmClosure value type + iterative run loop + define hoisting + SSR fixes giles 2026-03-23 23:39:35 +00:00
  • 8958714c85 VM: closure env chain for GLOBAL_GET/SET + remove JIT skip giles 2026-03-23 21:23:27 +00:00
  • 30cfbf777a Fix letrec thunk resolution + compiler letrec support + closure JIT check giles 2026-03-23 21:04:47 +00:00
  • ffe849df8e Stepper: render tokenized code with syntax highlighting in SSR giles 2026-03-23 20:20:11 +00:00
  • 49b03b246d Stricter isomorphic test: exact DOM structure + text comparison giles 2026-03-23 20:12:17 +00:00
  • 33a02c8fe1 Playwright tests for isomorphic SSR giles 2026-03-23 20:10:35 +00:00
  • a823e59376 Fix root cause: skip JIT for closure lambdas in BOTH hook and vm_call giles 2026-03-23 19:24:14 +00:00
  • 96f50b9dfa Add sibling sublist parser tests + reset JIT sx-parse giles 2026-03-23 19:17:05 +00:00
  • 890c472893 Add compile-letrec to pre-compile list giles 2026-03-23 19:11:32 +00:00
  • 5cfeed81c1 Compiler: proper letrec support (mutual recursion) giles 2026-03-23 18:52:34 +00:00
  • 2727a2ed8c Skip JIT for lambdas with closure bindings giles 2026-03-23 18:45:40 +00:00
  • 6e804bbb5c Stepper island: eager parsing + SSR content in lakes giles 2026-03-23 18:26:51 +00:00
  • c4224925f9 CSSX flush appends to persistent head stylesheet giles 2026-03-23 18:19:04 +00:00
  • fe84b57bed Move CSSX rules to <head>, skip client-affinity components in SSR giles 2026-03-23 18:14:43 +00:00
  • 5b370b69e3 Fix island state preservation: revert force-dispose to dispose giles 2026-03-23 17:59:10 +00:00
  • 639a6a2a53 Standalone OOB layout: remove :affinity :server, let client render giles 2026-03-23 17:48:14 +00:00
  • 3cce3df5b0 Fix standalone OOB layout: delegate to shared layout for proper OOB swaps giles 2026-03-23 17:15:57 +00:00
  • 9ff913c312 Fix root cause: parse-int in primitives table handles 2-arg form giles 2026-03-23 17:02:14 +00:00
  • b1de591e9e Fix CSSX colour rules: reset cssx-resolve JIT to force CEK giles 2026-03-23 16:49:49 +00:00
  • 364fbac9e1 Fix parse-int to handle 2-arg form (value + default) giles 2026-03-23 16:31:41 +00:00
  • 8f2a51af9d Isomorphic hydration: skip re-render when server HTML present giles 2026-03-23 16:20:58 +00:00
  • fa700e0202 Add letrec to render-aware HTML forms — stepper island now SSRs giles 2026-03-23 15:41:09 +00:00
  • f4610e1799 Fix thunk handling for island SSR + effect no-op on server giles 2026-03-23 15:31:58 +00:00
  • f3c0cbd8e2 CSSX rules from island SSR: flush collected rules via ~cssx/flush in shell giles 2026-03-23 14:53:31 +00:00
  • 6e1d28d1d7 Load freeze.sx + browser API stubs for complete island SSR giles 2026-03-23 14:44:51 +00:00
  • 2c8afd230d Island SSR: spreads work, CSS classes render, context primitive registered giles 2026-03-23 14:38:45 +00:00
  • 92bfef6406 Island SSR: defislands render to HTML server-side with hydration markers giles 2026-03-23 14:33:04 +00:00
  • 894321db18 Isomorphic SSR: server renders HTML body, client takes over with SX giles 2026-03-23 14:01:41 +00:00
  • 9bd4863ce1 Clean up JIT diagnostic logging from pre-compile loop giles 2026-03-23 12:49:20 +00:00
  • 2a5ef0ea09 JIT: restore re-entrancy guards, compile quasiquote inline, closure env merging giles 2026-03-23 12:22:54 +00:00
  • 1cc3e761a2 Fix get nil-safety in sx_runtime.ml + reduce VM failure log noise giles 2026-03-23 10:20:13 +00:00
  • e12b2eab6b Compiler: CALL_PRIM only for real primitives, GLOBAL_GET+CALL for runtime fns giles 2026-03-23 10:02:17 +00:00
  • 09feb51762 Unify scope mechanism: one world (hashtable stacks everywhere) giles 2026-03-23 09:45:25 +00:00
  • 4734d38f3b Fix VM correctness: get nil-safe, scope/context/collect! as primitives giles 2026-03-23 09:33:18 +00:00
  • a716e3f745 Pre-compile compiler functions at startup for faster JIT giles 2026-03-23 08:28:24 +00:00
  • 318c818728 Lazy JIT compilation: lambdas compile to bytecode on first call giles 2026-03-23 08:18:44 +00:00
  • 7628659854 Fix geography index: restore default content and add page gutters giles 2026-03-22 23:34:51 +00:00
  • bb34b4948b OCaml raw! in HTML renderer + SX_USE_OCAML env promotion + golden tests giles 2026-03-22 22:21:04 +00:00
  • df461beec2 SxExpr aser wire format fix + Playwright test infrastructure + blob protocol giles 2026-03-22 22:17:43 +00:00
  • 6d73edf297 Length-prefixed binary framing for OCaml↔Python pipe giles 2026-03-20 12:48:52 +00:00
  • 373a4f0134 Fix pipe desync: send_ok_raw escapes newlines, expand-components? in env giles 2026-03-20 12:32:03 +00:00
  • ae0e87fbf8 VM aser-slot → sx-page-full: single-call page render, 0.55s warm giles 2026-03-20 11:06:04 +00:00