~/talk

Inside the Scala Capture Checker

Talkat WITS 2024 · on Saturday, 2024-01-20· [scala, compilers-and-language-design]
slides:none on file

Scala compiler now runs a separate pass after typing that computes and enforces capability flow: implicit capability arguments model effects, boxed generic parameters hide captures and unbox on access, and capture tunneling preserves safety across containers. The implementation lives in scalac as a setup + check phase (opt-in via an import), rechecks stdlib collections and futures, and reports small annotation overhead while running roughly as long as the typer. Types carry explicit capture set constraints solved by incremental propagation.

AI-written summary · about

  1. 0:00Scala Capture Checker intro
  2. 1:03Why capture checking matters
  3. 15:52Resources and effects
  4. 28:11Effect polymorphism
  5. 35:17Type system foundations
  6. 44:15Capture checking with generics
  7. 51:59How capture checker works
  8. 1:00:03Results 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.