u/hsyl20in r/haskell • Recommends
On “How others manage effects ?”
3.4K subscribers • 11 videos on Hallway
Intermediate. Assumes working knowledge.
2.3K views1 year ago2 recommendations
Programming languagesHistory and cultureHaskellFunctional programmingHistory of computing
Tom Ellis traces the evolution of side effects in Haskell from monads and transformers to modern effect systems like Bluefin.
How Haskell's approach to side effects evolved – from Monads to Bluefin In this keynote, Tom Ellis traces the evolution of how Haskell handles side effects. Starting from the original challenges posed by referential transparency, he explains the historical development of monads, monad transformers, the MTL library, and more modern approaches such as ST, IORef, and effect systems like Bluefin. Along the way, he discusses trade-offs in ergonomics, performance, composability, and readability. The talk is both accessible and comprehensive—essential viewing for anyone interested in how Haskell's purity coexists with real-world programming. About Tom Ellis Tom Ellis is a Haskell developer and systems architect working at Groq, a company building high-speed chips for AI. He is known in the Haskell community for his contributions to effect systems, including the development of Bluefin, and for earlier work on Opaleye, a type-safe DSL for SQL in Haskell. He is also a member of the Haskell Foundation and active in ongoing efforts to evolve the language and its ecosystem. Hosted at the OST This talk was recorded at the OST – Eastern Switzerland University of Applied Sciences in Rapperswil, the official host of ZuriHac, the world's largest Haskell community event. The OST is proud to support the global exchange between research, community, and industry. Introduction & framing the topic What are effects – and why do they matter in Haskell? Monads as the original answer Monad Transformers & stacking complexity MTL: the Haskell98 approach Alternatives: ST, IORef, ContT and effects by convention Non-determinism, lists & combinator effects The legacy of MTL and what came next Extensible effects & splitting concerns Streaming systems and functional structure Polysemy and closed-world reasoning Bluefin: a new approach to effects Bluefin’s goals and design trade-offs Fine-grained error handling in Bluefin Community questions & Q&A Concluding thoughts, advice & future work #Haskell #EffectSystems #ZuriHacWhat people say. Highly recommended by Haskell developers for understanding the history, trade-offs, and design of different effect systems.
u/hsyl20in r/haskell • Recommends
On “How others manage effects ?”
u/Ok_Signature1010in r/haskell • Recommends
On “How to use Monad transformers ergonomically?”
u/tomejaguarin r/haskell • Mentions
On “How to handle "Early returns" or conditions in Haskell.”