Solving Problems the Clojure Way
summary
Argues idiomatic Clojure is a practical mix of functional programming and data-driven programming and demonstrates by implementing Goofspiel in JavaScript then refactoring it: an imperative OOP loop becomes a pure next-state function that appends states (the sequence is generated by recursion) while one small runner handles logging and effects, so about 95% pure code remains. Shows re-frame style returning an effects map, and cites Hiccup and AWS JSON SDK as data-driven examples.
AI-written summary · about
chapters (11)
- 0:00Introduction and audience setup
- 1:04Why Clojure feels different
- 8:06Introducing the GOPS game example
- 9:09Imperative solution to the problem
- 13:01Object-oriented approach compared
- 17:33Core ideas of functional programming
- 21:29Techniques to avoid state and side effects
- 28:29Functional patterns in real libraries
- 39:28Refactoring to a functional style
- 54:56What data-driven programming means
- 1:01:50Summary and closing remarks
related talks
40mFun with Functional Programming in Clojure
38mFun with Functional Programming in Clojure
34mClojure by neophyte
32mFunctional Programming in 40 Minutes
01h 15mEffective Programs - 10 Years of Clojure
49mA whirlwind tour of functional programming in Clojure
36mBack to the Future: How 80s Arcade Games Taught me Clojure
46mFunctional Programming with Go
