- Add make-wind-after-frame / make-wind-return-frame CEK frame types - Add *winders* global stack tracking active after-thunks - Add kont-unwind-to-handler (replaces kont-find-handler in raise-eval) — calls after-thunks for wind frames encountered while unwinding to handler - Add wind-escape-to — pops and calls after-thunks down to captured winders-len - Replace sf-dynamic-wind with step-sf-dynamic-wind (full CEK dispatch) - Fix "callcc" frame: store winders-len in continuation object - Fix callcc-continuation? case: call wind-escape-to before escape - JS platform: extend SxCallccContinuation to store windersLen; add callcc-continuation-winders-len accessor - 8 tests: normal return, raise escape, call/cc escape, nested LIFO, guard ordering - 1948/2500 (was 1940); zero regressions Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
144 KiB
144 KiB