Explore thirteen different implementations of turtle graphics in this comprehensive conference talk. Dive into various functional programming techniques, including partial application, functional dependency injection, validation with Success/Failure results, the Either monad, the State monad, agents with message queues, event sourcing, stream processing, capability-based design, and the interpreter pattern. Gain a quick overview of functional programming in practice, starting with the well-known turtle graphics API and stretching it to its limits. Learn how to transform functions, handle errors, implement async operations, convert functions into data, process commands and events, and create capability-based APIs. Discover common patterns and practical applications of partial application, API coupling, and interpreter design. Perfect for FP-curious developers seeking a fast-paced introduction to functional programming concepts and their real-world applications.
Thirteen Ways of Looking at a Turtle - Functional Programming in Practice