19 Collections - Latest First - Chse one - invert order


1 - Drawing Heighway’s Dragon
  1   Drawing Heighway’s Dragon - Part 1 - Recursive Function Rewrite - From Imperative Style in Pascal 64 To Functional Style in Scala 3   
  2   Drawing Heighway’s Dragon - Part 2 - Recursive Function Simplification - From 2^n Recursive Invocations To n Tail-Recursive Invocations Exploiting Self-Similarity   
  3   Drawing Heighway’s Dragon - Part 3 - Simplification Through Separation of Concerns - Rotation Without Matrix Multiplication   
  4   Drawing Heighway’s Dragon - Part 4 - Interactive and Animated Dragon Creation   

2 - Fibonacci Function Gallery
  1   Fibonacci Function Gallery - Part 1   
  2   Fibonacci Function Gallery - Part 2   

3 - Folding Cheat Sheets
  1   Folding Cheat Sheet Series Titles   
  2   Folding Cheat Sheet #1 - Folding over recursively defined data structures for natural numbers and lists   
  3   Folding Cheat Sheet #2 - Programmatic and mathematical definitions of right fold and left fold   
  4   Folding Cheat Sheet #3 - The universal property of fold   
  5   Folding Cheat Sheet #4 - For functions that can be defined both as a right fold and as a left fold, one may be more efficient than the other   
  6   Folding Cheat Sheet #5 - Folding a list right and left using Cons and Nil results in the identity and reverse functions   
  7   Folding Cheat Sheet #6 - Left and right folds and tail recursion   
  8   Folding Cheat Sheet #7 - The three duality theorems of fold   
  9   Folding Cheat Sheet #8 - Folding with monoids   
  10   Folding Cheat Sheet #9 - List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate'   

4 - Sightings of Cats functions in Books, Courses, etc
  1   A sighting of sequence function in Practical FP in Scala   
  2   A sighting of traverseFilter and foldMap in Practical FP in Scala   
  3   A sighting of traverse_ in Practical FP in Scala   
  4   A Sighting of filterA in Typelevel Rite of Passage   

5 - Sightings of Cats functions in Practical FP in Scala
  1   A sighting of sequence function in Practical FP in Scala   
  2   A sighting of traverseFilter and foldMap in Practical FP in Scala   
  3   A sighting of traverse_ in Practical FP in Scala   

6 - Computer Graphics in Java and Scala
  1   Computer Graphics in Java and Scala - Part 1   
  2   Computer Graphics in Java and Scala - Part 1b   

7 - The Expression Problem
  1   The Expression Problem Part 1   
  2   The Expression Problem Part 2   

8 - Refactoring: A First Example - Martin Fowler’s First Example of Refactoring
  1   Refactoring: A First Example - Martin Fowler’s First Example of Refactoring, Adapted to Scala   
  2   Refactoring: A First Example - Martin Fowler’s First Example of Refactoring, Adapted to Java   
  3   Side by Side - Scala and Java Adaptations of Martin Fowler’s Javascript Refactoring Example   

9 - N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala
  1   N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 1   
  2   N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 2   
  3   N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 3   
  4   N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 4   

10 - Folding Unfolded
  1   Folding Unfolded - Part 1   
  2   Folding Unfolded - Part 2   
  3   Folding Unfolded - Part 3   
  4   Folding Unfolded - Part 4   
  5   Folding Unfolded - Part 5   

11 - Game of Life - Polyglot FP - Haskell and Scala
  1   Game of Life - Polyglot FP - Haskell and Scala - Part 1   
  2   Game of Life - Polyglot FP - Haskell and Scala - Part 2   
  3   Game of Life - Polyglot FP - Haskell and Scala - Part 3   

12 - Monads
  1   Arrive at monads by going from composition of pure functions to composition of effectful functions   
  2   Monad as Functor with pair of Natural Transformations   
  3   Monad Laws Must Be Checked   
  4   Writer Monad for logging execution of functions   
  5   Monads do not Compose   
  6   Monad Transformers - Part 1   
  7   Addendum to `Monads do not Compose`   
  8   State Monad   
  9   The Monad Fact Series   
  10   Monad Fact #1   
  11   Monad Fact #2   
  12   Monad Fact #3   
  13   Monad Fact #4   
  14   Monad Fact #5   
  15   Monad Fact #6   
  16   From Scala Monadic Effects to Unison Algebraic Effects   
  17   Scala 3 enum for a terser Option Monad Algebraic Data Type   

13 - Monad Fact Series
  1   The Monad Fact Series   
  2   Monad Fact #1   
  3   Monad Fact #2   
  4   Monad Fact #3   
  5   Monad Fact #4   
  6   Monad Fact #5   
  7   Monad Fact #6   

14 - Functional Effects
  1   Functional Effects - Part 1   
  2   Functional Effects - Part 2   

15 - Monoids
  1   Monoids - Part 1 - With examples using Scalaz and Cats   
  2   Monoids - Part 2 - With examples using Scalaz and Cats   

16 - Sequence and Traverse
  1   Sequence and Traverse - Part 1   
  2   Sequence and Traverse - Part 2   
  3   Sequence and Traverse - Part 3   

17 - Applicative Functor
  1   Applicative Functor - Part 1   
  2   Applicative Functor - Part 2   
  3   Applicative Functor - Part 3   
  4   Function Applicative for Great Good of Palindrome Checker Function   
  5   Hand Rolled Applicative User Validation Code Kata   
  6   Function Applicative for Great Good of Leap Year Function   

18 - Applicative Functor Series
  1   Applicative Functor - Part 1   
  2   Applicative Functor - Part 2   
  3   Applicative Functor - Part 3   

19 - The Open Closed Principle
  1   The Open-Closed Principle - Part 1 - The Original Version   
  2   The Open-Closed Principle - Part 2 - The Contemporary Version - An Introduction