~/talk

Tracing Just-in-time Compilation for Effects and Handlers

Talkat OOPSLA 2025 · 2025-10-16..10-18· [compilers-and-language-design]
slides:none on file

Implements an RPython-based tracing JIT that runs a common bytecode target for Eff, Effekt, and Koka, records hot traces and applies allocation removal and loop hoisting, and reports being competitive with ahead-of-time compilers. Oneshot continuation patterns (generators) get large speedups; multi-shot resumptions produce tens of traces and slow down due to trace fragmentation. Benchmarks show it beats V8 on control-effect workloads and is roughly comparable to PyPy-like baselines, artifacts and data are reproducible.

AI-written summary · about

  1. 0:00Tracing JIT for effect handlers
  2. 1:23Research questions and approach
  3. 2:48Implementation with three languages
  4. 3:31Tracing JIT compilation example
  5. 8:11Performance vs ahead-of-time compilers
  6. 9:20When tracing JIT works best
  7. 10:25Summary and insights
  8. 11:08Q&A
  9. 11:30Meta-tracing JIT for effects
  10. 12:32Benchmarking and AOT depth
  11. 13:58Stack space and resumptions
  12. 14:40Closing remarks
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.