Functional Programming for Pragmatists
summary
Functional style avoids mutation and side effects and treats functions as lookup tables so pure functions are memoizable, can be precomputed at compile time, and are trivially parallelizable; practical cost is that managed effects add overhead and effectful changes require "coloring" many callers. Claims include half a million lines of Elm in production with hundreds of thousands of tests and zero flaky elm tests since 2015, plus smaller, safer search spaces for debugging; drawback: in-place mutation often remains the fastest implementation.
AI-written summary · about
chapters (17)
- 0:00Intro
- 4:17Outline
- 4:31Scope: What is functional programming?
- 6:32Performance
- 6:51Scope: Pure functions
- 8:55Performance: Caching
- 10:57Performance: Precomputing
- 12:14Performance: Parallelizing
- 15:00Performance: Performance drawbacks
- 19:02Development
- 19:32Development: Testing
- 22:26Development: Revising
- 25:49Development: Debugging
- 31:18Development: Development drawbacks
- 32:35Ecosystem
- 38:09Summary
- 40:15Outro
related talks
32mFunctional Programming in 40 Minutes
42mFunctional Programming in 40 Minutes
31mA Primer on Functional Programming
01h 44mFunctional Programming: Technical Reasons to Adapt
14mFundamentalist Functional Programming
44mFunctional Programming You Already Know
01h 06mDesigning Applications with Functional Programming Constructs
49mFunctional Programming Essentials
