The Evolution of Effects in Functional Programming - From Monads to Higher-Order Effects
ACM SIGPLAN via YouTube
Overview
Explore the evolution of effectful programming in Haskell through this comprehensive 55-minute conference talk presented at PLMW@POPL'24. Trace the journey from pure functional programming to the integration of real-world computational effects like IO, state, and exceptions. Discover how monads revolutionized effectful programming by enabling controlled sequencing of computations. Learn about the limitations of monads and the subsequent development of monad transformers for improved modularity. Examine the emergence of algebraic effects as a flexible alternative and their extension into higher-order effects. Gain insights into the historical milestones that shaped Haskell's approach to handling side effects, from the initial introduction of monads to the latest advancements in higher-order effects. Understand the connections between different approaches to effects and how they address the challenges of combining pure functional programming with real-world applications.
Syllabus
[PLMW@POPL'24] The Evolution of Effects
Taught by
ACM SIGPLAN