~/talk

A Practical Mode System for Recursive Definitions

Talkat POPL 2021 · 2021-01-17..01-22
links:none on file
links:none on file
links:none on file
slides:none on file

A static mode system that classifies recursive bindings as safe or vicious and is proven sound against the Nordlander–Carlsson–Gill source semantics. It gives two complementary modes (roughly return vs construct) and a directed backwards algorithm extracted from declarative rules, replaces the fragile syntactic OCaml check, and is implemented in OCaml where it catches previously missed buggy definitions. Paper-level artifacts: declarative rules, a mechanistic soundness proof, and an executable OCaml implementation that scales to real-language features (exceptions, GADTs, first-class modules).

AI-written summary · about

  1. 0:00Practical mode system intro
  2. 3:14Recursive definitions need modes
  3. 7:57Static vs dynamic modes
  4. 12:16Evaluating expressions in modes
  5. 17:14Contexts and mode composition
  6. 22:35Mode usage examples
  7. 27:21Edge cases and exceptions
  8. 31:44Forcing contexts and rules
  9. 34:01Conclusion and future
~/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.