The Origins of Free
summary
Starts from a definition of algebra and shows, step by step, that the term algebra is initial so any variable assignment yields a unique homomorphism; constructs free algebras with variables and explains how that generalises to monads. Builds a concrete free‑monad datatype as syntax with pure flatMap suspend (three constructors), compares Haskell’s functor‑based normalized form and Scala/Cats/Scalaz implementations, and demonstrates interpreters that actually run the resulting program descriptions.
AI-written summary · about
chapters (15)
- 0:00Intro
- 0:48THE PLAN
- 6:19ABOUT ME
- 7:17WHAT IS AN ALGEBRA?
- 10:12UNIVERSAL ALGEBRA SIGNATURE EXAMPLE
- 11:21UNIVERSAL ALGEBRA ALGEBRA
- 12:53TERM ALGEBRA
- 16:10HOMONORPHISM
- 18:10INITIAL ALGEBRA
- 25:12FREE ALGEBRA EXAMPLE
- 26:53MEANING OF FREE
- 29:07FREE RECAP
- 29:39MODELLING SEQUENTIAL PROGRANS MONAS
- 31:20FREE NONAD
- 34:24FREE IN CATS SCALAZ
related talks
53mThe Origins of Free
52mBake Real-life Apps with a Handful of Free, Coproducts & Types
46mChasing Arrows, in categories containing functors and monads
49mFree vs Tagless Final: What, Why, When?
47mIntroduction to Algebraic Effects
01h 11mHands on Chat About Categories
45mA practical introduction to Category Theory
47mIntroduction to FP Using Haskell (Part 2)
