Commit Graph

  • 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
  • 8dd3eaa1d9 CALL_PRIM: primitives first, then globals — VM for-each works! giles 2026-03-19 22:48:26 +00:00
  • e6663a74ba floor(0)=-1 bug fixed + 12/12 adapter compiles + primitives giles 2026-03-19 22:34:51 +00:00
  • 231bfbecb5 VM aser-slot routing: isolated globals, inner code extraction, debug giles 2026-03-19 22:18:21 +00:00
  • df256b5607 VM adapter: compile works, env isolation needed giles 2026-03-19 21:36:38 +00:00
  • 0ce23521b7 Aser adapter compiles + loads as VM module — first VM execution giles 2026-03-19 21:18:34 +00:00
  • c79aa880af Compiler: handle :effects annotation in define, adapter-sx.sx compiles giles 2026-03-19 21:08:01 +00:00
  • f12bbae6c9 40/40 VM tests pass, auto-compile disabled until full aser compilation giles 2026-03-19 20:57:59 +00:00
  • c8c4b322a9 All 40 VM tests pass: map/filter/for-each + mutable closures fixed giles 2026-03-19 20:47:40 +00:00
  • e7da397f8e VM upvalues + HO primitives + 40 tests (36 pass, 4 fail) giles 2026-03-19 20:41:23 +00:00
  • 1bb40415a8 VM upvalue support: closures capture variables from enclosing scopes giles 2026-03-19 20:13:17 +00:00
  • a62b7c8a5e Disable auto-compile until CEK fallback is robust giles 2026-03-19 19:37:23 +00:00
  • ceb2adfe50 Compiler: cond, case, thread-first, defcomp, quasiquote, letrec giles 2026-03-19 19:34:36 +00:00
  • 5ca2ee92bc VM auto-compile infrastructure + disable until compiler is complete giles 2026-03-19 19:30:54 +00:00
  • e14fc9b0e1 Auto-compile: lambdas → bytecode VM at load time giles 2026-03-19 19:07:42 +00:00
  • a8d1163aa6 SX bytecode VM executing: compile → run → correct results giles 2026-03-19 18:52:50 +00:00
  • c8533181ab SX bytecode compiler working: all core expressions compile correctly giles 2026-03-19 18:43:30 +00:00
  • 40d0f1a438 SX bytecode: format definition, compiler, OCaml VM (Phase 1) giles 2026-03-19 18:25:41 +00:00
  • d9e80d8544 CEK frame records: eliminate Hashtbl for all 29 frame types giles 2026-03-19 17:56:50 +00:00
  • c16142d14c CekState record optimization + profiling: 1.5x speedup, root cause found giles 2026-03-19 17:40:34 +00:00
  • 8707f21ca2 Single-pass aser_slot for HTMX path + kernel eval timing + stable hash giles 2026-03-19 17:03:47 +00:00
  • 96e7bbbac1 Non-blocking batch IO for OCaml kernel + stable component hash giles 2026-03-19 16:53:01 +00:00
  • d3b3b4b720 Fix pipe desync: async drain on _send, robust Playwright tests giles 2026-03-19 16:11:55 +00:00
  • f819fda587 aser_slot migration: single-pass expansion, pipe desync fix, _render_to_sx giles 2026-03-19 14:56:55 +00:00
  • d06de87bca Island guard in aser expansion + page helper IO tests (13 tests) giles 2026-03-19 12:48:34 +00:00
  • 109ca7c70b Fix aser server-affinity expansion: keyword values, OOB wrapper, page helpers giles 2026-03-19 12:06:24 +00:00
  • 171c18d3be Aser server-affinity component expansion + readline buffer fix giles 2026-03-18 20:46:33 +00:00
  • 1c91680e63 Mark spec explorer browser render test as xfail giles 2026-03-18 19:45:10 +00:00
  • e61dc4974b Fix readline buffer limit (10MB) and evaluator spec filename giles 2026-03-18 19:37:59 +00:00
  • 8373c6cf16 SX spec introspection: the spec examines itself via sx-parse giles 2026-03-18 17:57:19 +00:00
  • fac97883f9 Spec explorer data endpoint, spec file finder, browser render test (failing) giles 2026-03-18 17:36:21 +00:00
  • 71c2003a60 OCaml evaluator for page dispatch + handler aser, 83/83 Playwright tests giles 2026-03-18 17:22:51 +00:00
  • 5b6e883e6d Add per-example sub-nav items under Examples, fold event bridge + stores in giles 2026-03-17 18:28:54 +00:00
  • 2203f56849 Restructure reactive islands: remove Overview link, Demo → Examples, add event bridge demo giles 2026-03-17 18:16:57 +00:00