~/talk

The Evolution of Effects

Talkat PLMW @ POPL 2024 · on Wednesday, 2024-01-17
linkedin:nicolasgwu
slides:none on file

A concise history of effects traces monads → monad transformers → algebraic effects → higher-order effects, showing how do-notation origin and the bind symbol emerge and why modularity breaks monad composition. Algebraic handlers and L-theory underpin implementations; a production semantic analyzer at GitHub production use starts from a paper prototype, is engineered into a fast implementation, and runs correctly, reporting up to 250× faster than earlier handlers while supporting multiple interpretations of the same effectful program.

AI-written summary · about

  1. 0:00Introduction
  2. 1:20Talk goals and effects
  3. 2:23Functional vs imperative origins
  4. 3:07Leibniz's combinatorial alphabet
  5. 4:34Hilbert's challenge and Gödel's theorem
  6. 5:59Von Neumann architecture
  7. 7:01Fortran control flow and Lisp features
  8. 9:51ALGOL's contributions
  9. 11:15Landin's applicative expressions
  10. 14:46ISWIM and DSL design
  11. 23:34Structured programming
  12. 28:11Denotative vs imperative
  13. 30:20Monads as bridge
  14. 33:33Monads in category theory
  15. 36:40Category theory influence
  16. 39:52Monads and state
  17. 41:56Monads in Haskell
  18. 44:04Monad transformers
  19. 46:52Algebraic effect handlers
  20. 48:18Higher-order effects in GitHub
  21. 50:05Effect libraries today
  22. 50:26Conclusion
~/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.