~/talk

Effects: to be or not to be?

Talkat GeeCON 2023 · 2023-04-19..04-21· [compilers-and-language-design, scala]
slides:none on file

Compares concrete effect approaches: Java checked exceptions (low location precision, brittle coupling), eager Futures (high location precision but viral syntax), functional IO like ZIO (lazy descriptions, strong resource safety, referential transparency, but high syntax overhead and viral APIs), Unison abilities (explicit bangs showing effects), and a Loom+capabilities prototype (low syntax cost, unclear safety). Argues tradeoffs are real: cannot simultaneously get low syntax overhead, high location precision and full referential transparency, so pick the two you need for failure management, resource safety and tooling.

AI-written summary · about

  1. 0:00Introduction to effects
  2. 2:32Benefits of static typing
  3. 5:19Defining side effects
  4. 8:30Examples of effects
  5. 11:22What is an effect system
  6. 14:13Motivation for effect systems
  7. 17:27Implementing effect systems
  8. 19:12Checked exceptions in Java
  9. 24:08Why checked exceptions failed
  10. 28:03Error handling in static typing
  11. 28:25Futures as effect system
  12. 32:41Functional effect systems with ZIO
  13. 37:18ZIO Direct for syntax reduction
  14. 39:29Unison’s ability-based effects
  15. 43:02Capabilities with Project Loom
  16. 45:29Trade-offs in effect systems
  17. 46:32Company introduction
  18. 46:54Q&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.