Thirteen ways of looking at a Turtle
summary
Thirteen different F# implementations of a turtle graphics API appear, each making a concrete tradeoff: 13 implementations delivered in ~4 minutes each, from mutable OO to immutable functions, partial application and dependency parameterization, then State monad, agents, event sourcing and an interpreter/free‑monad program. The demos build a canvas plus audit and distance processors, show async/result/state composition, and run: pipelines draw the turtle, events persist and replay, and capability responses disable illegal moves. Expect working examples and the exact FP patterns used rather than vague promises.
AI-written summary · about
chapters (16)
- 0:00Welcome
- 1:56Object oriented Turtle implementation
- 7:15Abstract data type Turtle approach
- 9:21Functional Turtle
- 12:28State monad
- 17:56Error handling
- 21:14Async Turtle
- 23:43Batch processing
- 27:56Actor model
- 29:59Event sourcing
- 33:09Stream processing
- 40:56Dependency injection
- 46:53Dependency rejection
- 52:12Interpreter pattern
- 59:20Capability model
- 1:05:01Summary
related talks
01h 05mThirteen ways of looking at a Turtle
01h 07mThirteen ways of looking at a Turtle
53mIntroduction to T(ype)DD with F# and Reactive Web Apps with Fable.io
01h 06mThe Functional Programmer's Toolkit
01h 01mThe power of composition
49mFunctional geometry: picture combinators and recursive fish
49mRefactoring toward a more functional style in F#
01h 00mFunctional-first programming with F#
