~/talk

Rethinking Effects with Effect Systems

Talkat Lambda World 2024 · 2024-10-02..10-04· [functional-programming]
slides:none on file

Effect systems are presented as a way to write normal, readable code while keeping effects local: code uses direct style descriptions of operations and separate handlers that delimit where effects can occur, improving substitution-based reasoning and composition. Scala 3 demos use capture checking to prove no references escape a scope, enabling safe region-based allocation (arena allocation) and automatic deallocation. Runtime support captures continuations under the hood to provide efficient handlers, enabling proper tail calls and lower overhead than library-level monad encodings.

AI-written summary · about

  1. 0:00Introduction
  2. 1:04Functional programming defined
  3. 3:30Core hypothesis
  4. 5:55Substitution in programming
  5. 8:48Effects break substitution
  6. 11:57Effects and side effects
  7. 13:24Solving effects with effect systems
  8. 16:49Isolating effects with handlers
  9. 19:15Effect systems vs monads
  10. 24:08Benefits over monads
  11. 26:19Implementing with type systems
  12. 29:02Region-based memory with capture checking
  13. 31:50Runtime support
  14. 33:12Q&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.