The Joy of Functional Programming
summary
Argues that functional programming gives concrete benefits: referential transparency and pure functions let compilers reorder work and run independent tasks concurrently, Java 8 Streams show this with map/filter/collect examples (replacing flag-filled loops), a stock-price example uses a Stream then switches to parallel stream for measurable speedup, lazy evaluation avoids unnecessary work, and purity makes testing and concurrency simpler; cites history (lambda calculus 1930s, OO mainstream ~1967→1990) and real-world failures like 10–35% hospital infection rates before hygiene.
AI-written summary · about
chapters (13)
- 0:00Welcome
- 3:42Mainstream beliefs
- 15:44Java and C dominance
- 18:13The slow rise of object-oriented programming
- 25:24The joy of functional programming introduction
- 27:12Lambda calculus roots
- 34:39Statements vs expressions
- 38:11Imperative vs declarative
- 46:46Why FP feels adult
- 53:10Lazy evaluation core
- 57:26FP for real problems
- 1:00:16Balancing FP and imperative
- 1:03:27Q&A
related talks
01h 06mDesigning Applications with Functional Programming Constructs
44mBenefits of Functional Programming Beyond map/filter/reduce
44mFunctional Programming You Already Know
36mHow functional programming change my Java code
48mEmbrace the Func - How Far has Functional Programming Come in Java?
31mA Primer on Functional Programming
01h 44mFunctional Programming: Technical Reasons to Adapt
36mConcrete Functional Programming
