Eta Fibers: Towards Better Concurrency on the JVM
summary
Eta implements lightweight, cooperative Fibers on the JVM as a library with small Java runtime extensions, exposing a non-blocking fiber monad with forkFiber, MVar-style channels and yield/block primitives. It compiles Haskell-like code to JVM bytecode, runs a distributed demo (wormhole/teleport) successfully, and measures context-switching with a ring benchmark: 1,000,000 passes (ring size 500), showing ~950 ms for Eta fibers vs ~615 ms for Akka and performance on par with Quasar.
AI-written summary · about
chapters (19)
- 0:00Intro
- 0:42Project Overview
- 1:51Eta Overview
- 5:00OS Threads
- 6:39Multiplexed Threads
- 7:57Green Threads
- 8:39Alternative: Event Loop
- 11:48Unexpected Semantics
- 13:37Introducing Sequenceables (Monads)
- 20:22Transient Inspiration
- 23:11The Fiber Monad
- 29:54Fiber Applications
- 33:49Fiber Tooling
- 35:32Analyzing Fiber Performance
- 36:19Eta Runtime
- 37:44JIT Compilation
- 38:54JIT Optimizations
- 41:39Thread-Ring Benchmark
- 44:26Print Inlining








