~/talk

Type-Safe Code Generation With Algebraic Effects and Handlers

Talkat GPCE 2024 · 2024-10-21..10-22· [compilers-and-language-design]
links:none on file
links:none on file
slides:none on file

A two-stage calculus with algebraic effects and deep handlers enforces that well-typed generators never produce scope-extruding code and supports multi-level let-insertion; the design uses refined environment classifiers and classifier-polymorphic handlers, formalizing the ideas handlers as future-stage binders and handlers are universal. The paper proves type soundness (progress and preservation), demonstrates examples where swapped handler order causes free variables to appear, and reports a conservative but practical typing that distinguishes safe from unsafe generators.

AI-written summary · about

  1. 0:00Introduction
  2. 0:21Staging with meta and type safety
  3. 1:05Algebraic effects and handlers background
  4. 2:13Red insertion with effect handlers
  5. 4:33Scope extrusion problem
  6. 5:22Environment classifiers for free variables
  7. 7:08Handling effect handlers in staging
  8. 8:47Order-sensitive scope extrusion examples
  9. 9:37Handlers as future stage binders solution
  10. 11:02Typing rules with classifier annotations
  11. 12:34Classifier polymorphism in handlers
  12. 13:38Type soundness proof and guarantees
  13. 14:27Related work vs Oishi-Kameyama
  14. 15:59Effect handlers vs shift/reset
  15. 16:20Summary of contributions
  16. 16:43Q&A: Porting to OCaml
  17. 18:16Q&A: Fixing type errors
  18. 19:19Q&A: Compiler guidance vs user correction
  19. 20:01Q&A: Environment classifiers in MetaML
  20. 21:09Q&A
~/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.