The Functor, Applicative, Monad talk
summary
Defines Functor, Applicative, Monad with concrete Scala types and code patterns: Option, Either, State as examples; shows map for Functor, zip and pure (or app) for Applicative, and flatMap-plus-pure for Monad. Demonstrates parsing ints and config, threading RNG/state without mutation, zipping independent effects, implementing traverse to collect lists, and composing dependent effects (parse header then body). Mentions for-comprehension sugar, cats/Haskell differences, and monad transformers for stacking effects.
AI-written summary · about
chapters (19)
- 0:00Introduction to talk
- 1:03Pure functional assumptions
- 3:54Handling missing values
- 5:15Stateful computations
- 7:01Effectful vs pure values
- 7:43Working with Option
- 9:48Introducing Functors
- 12:39Combining effectful values
- 13:22Need for Applicatives
- 16:53Applicative operations
- 19:46Why abstractions matter
- 20:30Generic Traverse function
- 24:06Dependent effectful values
- 26:53Monads explained
- 28:45Real-world example
- 30:11For-comprehension syntax
- 30:33Laws and limitations
- 31:39Further learning resources
- 34:08Q&A and closing
related talks
42mA pragmatic introduction to Category Theory
50mFunctional Programming with Effects
36mAn introduction to monadic structures and functional programming
46mOptimusPrimeT
40mA Pragmatic Introduction to Category Theories
31mThe Eff monad, one monad to rule them all
42mMonads you already use without knowing it
01h 16mFunctional Composition Beyond Monads
