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

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