119 Decks Ordered By Applause Count - Lowest First - Chse one - invert order

# Title Applauses  
1 Defining filter using (a) recursion (b) folding (c) folding with S, B and I combinators (d) folding with applicative functor and identity function 0  
2 Imperative Bowling Kata - 20 Years On - Delegating Menial Tasks to Github Copilot Chat - using Scala in IntelliJ IDEA 6  
3 Imperative Bowling Kata - 20 Years On - Delegating Menial Tasks to AI Coding Tool 'Claude Code' 8  
4 AI Concepts - MCP Neurons 9  
5 Combinatorial Interview Problems with Backtracking Solutions - from Procedural to Functional Programming - Part 2 13  
6 Combinatorial Interview Problems with Backtracking Solutions - from Procedural to Functional Programming - Part 1 18  
7 ApplicativeError functions handling and recovering from errors: A mnemonic to recall their signatures from their names 19  
8 Non-strict functions, bottom, and Scala by-name parameters 25  
9 Point-free or Die - Tacit Programming in Haskell 26  
10 Drawing Heighway’s Dragon - Part 3 - Simplification Through Separation of Concerns - Rotation Without Matrix Multiplication 27  
11 Test Doubles - Terminology, Definitions and Illustrations - with Examples - Part 1 29  
12 The Open-Closed Principle - Part 2 - The Contemporary Version - An Introduction 31  
13 De Morgan's Laws are Monoid Homomorphisms 34  
14 Year when lambda functions were introduced in various languages 34  
15 The Nature of Complexity in John Ousterhout’s Philosophy of Software Design 34  
16 List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate' 34  
17 Monad as Functor with pair of Natural Transformations 35  
18 Drawing Heighway’s Dragon - Part 4 - Interactive and Animated Dragon Creation 36  
19 The Open-Closed Principle - Part 1 - The Original Version 37  
20 Addendum to `Monads do not Compose` 37  
21 Drawing Heighway’s Dragon - Part 2 - Recursive Function Simplification - From 2^n Recursive Invocations To n Tail-Recursive Invocations Exploiting Self-Similarity 37  
22 Functor Composition 38  
23 Folding Cheat Sheet #9 - List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate' 40  
24 Function Composition - forward composition versus backward composition 41  
25 Scala 3 by Example - Algebraic Data Types for Domain Driven Design - Part 2 41  
26 Symmetry in the interrelation of flatMap/foldMap/traverse and flatten/fold/sequence 41  
27 Fibonacci Function Gallery - Part 2 42  
28 Fibonacci Function Gallery - Part 1 43  
29 Monad Transformers - Part 1 45  
30 Sequence and Traverse - Part 3 47  
31 Ad hoc Polymorphism using Type Classes and Cats 47  
32 Sequence and Traverse - Part 1 47  
33 Monads do not Compose 47  
34 Functional Effects - Part 1 47  
35 A sighting of sequence function in Practical FP in Scala 48  
36 Side by Side - Scala and Java Adaptations of Martin Fowler’s Javascript Refactoring Example 49  
37 Folding Cheat Sheet #5 - Folding a list right and left using Cons and Nil results in the identity and reverse functions 50  
38 Folding Unfolded - Part 5 50  
39 ‘go-to’ general-purpose sequential collections - from Java To Scala 50  
40 Sequence and Traverse - Part 2 51  
41 Folding Cheat Sheet #7 - The three duality theorems of fold 51  
42 Functional Effects - Part 2 51  
43 Folding Cheat Sheet Series Titles 51  
44 Folding Cheat Sheet #8 - Folding with monoids 52  
45 The aggregate function - from sequential and parallel folds to parallel aggregation 52  
46 Monad Fact #5 52  
47 Monoids - Part 2 - With examples using Scalaz and Cats 52  
48 Fusing Transformations of Strict Scala Collections with Views 53  
49 Sierpinski Triangle - Polyglot FP for Fun and Profit - Haskell and Scala 53  
50 A sighting of traverseFilter and foldMap in Practical FP in Scala 54  
51 Applicative Functor - Part 3 54  
52 A sighting of traverse_ in Practical FP in Scala 55  
53 Monad Fact #2 55  
54 The Expression Problem Part 1 55  
55 Writer Monad for logging execution of functions 56  
56 The Expression Problem Part 2 57  
57 The Sieve of Eratosthenes - Part 1 57  
58 Game of Life - Polyglot FP - Haskell and Scala - Part 2 57  
59 Function Applicative for Great Good of Palindrome Checker Function 57  
60 Arrive at monads by going from composition of pure functions to composition of effectful functions 58  
61 Natural Transformations 58  
62 Left and Right Folds - Comparison of a mathematical definition and a programmatic one 58  
63 State Monad 58  
64 Folding Cheat Sheet #3 - The universal property of fold 59  
65 Monad Fact #6 59  
66 The Monad Fact Series 59  
67 Monad Fact #4 59  
68 The Uniform Access Principle 60  
69 Folding Unfolded - Part 4 60  
70 Kleisli Composition 60  
71 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 2 60  
72 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 4 61  
73 Scala 3 by Example - Algebraic Data Types for Domain Driven Design - Part 1 61  
74 Folding Unfolded - Part 1 61  
75 Functor Laws 61  
76 Sum and Product Types - The Fruit Salad & Fruit Snack Example 62  
77 Game of Life - Polyglot FP - Haskell and Scala - Part 1 62  
78 Kleisli composition, flatMap, join, map, unit - implementation and interrelation - V2 updated for Scala 3 63  
79 Algebraic Data Types for Data Oriented Programming - From Haskell and Scala to Java 63  
80 Lambda Expressions and Java 8 - Lambda Calculus, Lambda Expressions, Syntactic Sugar, First Class Functions 64  
81 Applicative Functor - Part 1 64  
82 Monoids - Part 1 - With examples using Scalaz and Cats 65  
83 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 3 65  
84 Monad Fact #1 66  
85 Applicative Functor - Part 2 67  
86 Computer Graphics in Java and Scala - Part 1 67  
87 Folding Cheat Sheet #2 - Programmatic and mathematical definitions of right fold and left fold 67  
88 Function Applicative for Great Good of Leap Year Function 68  
89 Monad Fact #3 68  
90 Quicksort - a whistle-stop tour of the algorithm in five languages and four paradigms 69  
91 Folding Unfolded - Part 2 70  
92 Folding Cheat Sheet #6 - Left and right folds and tail recursion 71  
93 Game of Life - Polyglot FP - Haskell and Scala - Part 3 72  
94 Refactoring: A First Example - Martin Fowler’s First Example of Refactoring, Adapted to Scala 73  
95 A Sighting of filterA in Typelevel Rite of Passage 73  
96 Compositionality and Category Theory 73  
97 From Subtype Polymorphism To Typeclass-based Ad hoc Polymorphism - An Example 74  
98 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 75  
99 Drawing Heighway’s Dragon - Part 1 - Recursive Function Rewrite - From Imperative Style in Pascal 64 To Functional Style in Scala 3 76  
100 Computer Graphics in Java and Scala - Part 1b 77  
101 Refactoring: A First Example - Martin Fowler’s First Example of Refactoring, Adapted to Java 80  
102 Tagless Final Encoding - Algebras and Interpreters and also Programs 84  
103 The Functional Programming Triad of Folding, Scanning and Iteration - A first example in Scala and Haskell 85  
104 Scala 3 enum for a terser Option Monad Algebraic Data Type 85  
105 Folding Cheat Sheet #1 - Folding over recursively defined data structures for natural numbers and lists 88  
106 Hand Rolled Applicative User Validation Code Kata 90  
107 Functional Core and Imperative Shell - Game of Life Example - Haskell and Scala 91  
108 From Scala Monadic Effects to Unison Algebraic Effects 98  
109 Nat, List and Option Monoids - From scratch - Combining and Folding - An example 101  
110 The Sieve of Eratosthenes - Part 2 - Genuine versus Unfaithful Sieve 101  
111 Scala Left Fold Parallelisation - Three Approaches 102  
112 The Functional Programming Triad of map, filter and fold 109  
113 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 1 112  
114 Definitions of Functional Programming 112  
115 The Debt Metaphor - Ward Cunningham in his 2009 YouTube video 130  
116 Folding Unfolded - Part 3 131  
117 Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid 138  
118 N-Queens Combinatorial Puzzle meets Cats 146  
119 Monad Laws Must Be Checked 254