~/talk

The Concurrency Triangle

Talkat Scalar 2026 · 2026-03-26..03-27· [concurrency, scala]
links:none on file
slides:none on file

Claim: the same continuation+scheduler+thread‑pool+yield pattern appears at three levels: library, compiler, runtime. Scala implements multi-shot continuations as heap‑allocated IO/fibers that let you run millions of fibers and batch thousands of steps before yielding; Kotlin turns suspending functions into compiler‑generated state machines with a Continuation/label pair; Java implements virtual threads by copying stack frames to the heap so blocking calls like Thread.sleep become nonblocking. Trade‑off is visibility and control (Scala) versus convenience (Kotlin) versus transparent runtime (Java).

AI-written summary · about

  1. 0:00Concurrency triangle intro
  2. 1:48Concurrency vs parallelism
  3. 3:58OS thread problem
  4. 5:45Four pillars of solutions
  5. 6:50Scala fibers and continuations
  6. 13:13Scala scheduler and pools
  7. 15:41Scala concurrency summary
  8. 16:03Kotlin continuations
  9. 21:40Kotlin dispatchers
  10. 23:06Java virtual threads
  11. 27:21Virtual threads blocking
  12. 29:26Trade-offs Scala Kotlin Java
  13. 30:09Continuations one-shot vs multi
  14. 31:00Conclusion
~/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.