~/talk

Lazy Linearity for a Core Functional Language

Talkat POPL 2026 · 2026-01-11..01-17· [functional-programming]
links:none on file
slides:none on file

Linear Core statically accepts Haskell-style lazy semantic linearity and proves soundness by an instrumented big-step semantics that tracks runtime resource use. Multiple GHC optimisations (including inlining) are shown to preserve linearity in Linear Core even when they break syntactic linearity in Core. A GHC plugin implements the system, validates it against linear-base and other libraries, accepts the vast majority of intermediate programs, and rejects a few dozen cases that expose problematic rewrite rules and missing multiplicity coercions.

AI-written summary · about

  1. 0:00Introduction
  2. 2:53Syntactic linearity fails
  3. 5:44Typing lazy linearity
  4. 8:58Let bindings in lazy linearity
  5. 10:25Pattern matching and WHNF
  6. 12:12Irrelevant variables
  7. 13:37Soundness and optimizations
  8. 14:41Beyond lazy languages
  9. 15:05Q&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.