Functional Programming in 40 Minutes
summary
Functional programming centers on pure functions, immutable persistent data structures, and explicit bridges to the messy world like atoms and agents or queues that sequence side effects. Data structures use structural sharing (wide branching, e.g. 32) so copies are cheap; threads can’t corrupt shared state and a whole class of concurrency bugs disappears. Production code ends up as many small testable functions with a few protocols — example: Pedestal is ~18.7k lines with 944 functions, 28 protocols, 8 state bridges, showing the approach scales.
AI-written summary · about
chapters (13)
- 0:00Start
- 3:12FORGET Everything You Know About Programming
- 8:54During the type erasure process, the Java compiler erases all type parameters and replaces each with its first bound if the type parameter is bounded, or Object if the type parameter is unbounded
- 21:40Copies Copies Copies
- 26:13EFFECTS
- 33:43Magic
- 33:56off-by-one errors
- 34:09REDUNDANT
- 34:53database is
- 38:5018,706 lines
- 39:1828 protocols
- 39:388 bridges to the stateful world
- 40:05944 functions
related talks
32mFunctional Programming in 40 Minutes
41mFunctional Programming for Pragmatists
44mFunctional Programming You Already Know
49mFunctional Programming Essentials
01h 44mFunctional Programming: Technical Reasons to Adapt
31mA Primer on Functional Programming
41mFunctional programming: Give it a chance!
43mFunctional programming is not just lambdas!
