117 Decks Ordered By View Count - Lowest First - Chse one - invert order

# Title Views  
1 Non-strict functions, bottom, and Scala by-name parameters 403  
2 Year when lambda functions were introduced in various languages 496  
3 Symmetry in the interrelation of flatMap/foldMap/traverse and flatten/fold/sequence 498  
4 De Morgan's Laws are Monoid Homomorphisms 520  
5 Addendum to `Monads do not Compose` 528  
6 Monad as Functor with pair of Natural Transformations 533  
7 Monad Transformers - Part 1 540  
8 Functor Composition 557  
9 Function Composition - forward composition versus backward composition 567  
10 Monads do not Compose 569  
11 Ad hoc Polymorphism using Type Classes and Cats 674  
12 Writer Monad for logging execution of functions 676  
13 Monoids - Part 2 - With examples using Scalaz and Cats 690  
14 Sequence and Traverse - Part 2 709  
15 State Monad 717  
16 Natural Transformations 726  
17 Functional Effects - Part 2 729  
18 Sequence and Traverse - Part 3 730  
19 Sequence and Traverse - Part 1 732  
20 Monoids - Part 1 - With examples using Scalaz and Cats 736  
21 Left and Right Folds - Comparison of a mathematical definition and a programmatic one 751  
22 Scala 3 by Example - Algebraic Data Types for Domain Driven Design - Part 2 753  
23 Folding Cheat Sheet Series Titles 765  
24 Functional Effects - Part 1 765  
25 Game of Life - Polyglot FP - Haskell and Scala - Part 2 773  
26 Monad Fact #2 809  
27 Game of Life - Polyglot FP - Haskell and Scala - Part 3 810  
28 The aggregate function - from sequential and parallel folds to parallel aggregation 816  
29 Folding Unfolded - Part 5 816  
30 Monad Fact #5 817  
31 Functor Laws 825  
32 Monad Fact #3 825  
33 Folding Unfolded - Part 4 826  
34 Folding Unfolded - Part 3 828  
35 Function Applicative for Great Good of Palindrome Checker Function 833  
36 Fusing Transformations of Strict Scala Collections with Views 836  
37 Applicative Functor - Part 3 838  
38 Scala 3 by Example - Algebraic Data Types for Domain Driven Design - Part 1 839  
39 Arrive at monads by going from composition of pure functions to composition of effectful functions 842  
40 The Uniform Access Principle 843  
41 Monad Fact #6 845  
42 A sighting of traverseFilter and foldMap in Practical FP in Scala 851  
43 The Functional Programming Triad of Folding, Scanning and Iteration - A first example in Scala and Haskell 852  
44 Sum and Product Types - The Fruit Salad & Fruit Snack Example 869  
45 ‘go-to’ general-purpose sequential collections - from Java To Scala 869  
46 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 4 876  
47 Side by Side - Scala and Java Adaptations of Martin Fowler’s Javascript Refactoring Example 879  
48 The Debt Metaphor - Ward Cunningham in his 2009 YouTube video 883  
49 A sighting of sequence function in Practical FP in Scala 883  
50 The Monad Fact Series 885  
51 Sierpinski Triangle - Polyglot FP for Fun and Profit - Haskell and Scala 892  
52 Quicksort - a whistle-stop tour of the algorithm in five languages and four paradigms 892  
53 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 2 896  
54 Monad Fact #4 907  
55 Applicative Functor - Part 1 928  
56 Folding Unfolded - Part 2 931  
57 A sighting of traverse_ in Practical FP in Scala 933  
58 Scala 3 enum for a terser Option Monad Algebraic Data Type 937  
59 Monad Fact #1 946  
60 Folding Unfolded - Part 1 952  
61 Game of Life - Polyglot FP - Haskell and Scala - Part 1 971  
62 Computer Graphics in Java and Scala - Part 1b 974  
63 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 3 986  
64 Kleisli Composition 995  
65 The Sieve of Eratosthenes - Part 1 997  
66 Nat, List and Option Monoids - From scratch - Combining and Folding - An example 998  
67 Applicative Functor - Part 2 1001  
68 From Scala Monadic Effects to Unison Algebraic Effects 1015  
69 Definitions of Functional Programming 1037  
70 Kleisli composition, flatMap, join, map, unit - implementation and interrelation - V2 updated for Scala 3 1045  
71 Folding Cheat Sheet #5 - Folding a list right and left using Cons and Nil results in the identity and reverse functions 1046  
72 Functional Core and Imperative Shell - Game of Life Example - Haskell and Scala 1051  
73 Refactoring: A First Example - Martin Fowler’s First Example of Refactoring, Adapted to Scala 1054  
74 Test Doubles - Terminology, Definitions and Illustrations - with Examples - Part 1 1068  
75 Drawing Heighway’s Dragon - Part 2 - Recursive Function Simplification - From 2^n Recursive Invocations To n Tail-Recursive Invocations Exploiting Self-Similarity 1073  
76 Computer Graphics in Java and Scala - Part 1 1087  
77 The Expression Problem Part 2 1103  
78 The Sieve of Eratosthenes - Part 2 - Genuine versus Unfaithful Sieve 1108  
79 Algebraic Data Types for Data Oriented Programming - From Haskell and Scala to Java 1119  
80 Imperative Bowling Kata - 20 Years On - Delegating Menial Tasks to AI Coding Tool 'Claude Code' 1133  
81 Drawing Heighway’s Dragon - Part 3 - Simplification Through Separation of Concerns - Rotation Without Matrix Multiplication 1146  
82 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 1 1159  
83 AI Concepts - MCP Neurons 1161  
84 The Expression Problem Part 1 1225  
85 Scala Left Fold Parallelisation - Three Approaches 1259  
86 Refactoring: A First Example - Martin Fowler’s First Example of Refactoring, Adapted to Java 1295  
87 Drawing Heighway’s Dragon - Part 4 - Interactive and Animated Dragon Creation 1325  
88 Combinatorial Interview Problems with Backtracking Solutions - from Procedural to Functional Programming - Part 2 1352  
89 The Nature of Complexity in John Ousterhout’s Philosophy of Software Design 1464  
90 Folding Cheat Sheet #9 - List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate' 1519  
91 Compositionality and Category Theory 1546  
92 From Subtype Polymorphism To Typeclass-based Ad hoc Polymorphism - An Example 1662  
93 Combinatorial Interview Problems with Backtracking Solutions - from Procedural to Functional Programming - Part 1 1666  
94 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 1699  
95 Hand Rolled Applicative User Validation Code Kata 1806  
96 Point-free or Die - Tacit Programming in Haskell 1876  
97 ApplicativeError functions handling and recovering from errors: A mnemonic to recall their signatures from their names 1877  
98 Tagless Final Encoding - Algebras and Interpreters and also Programs 1939  
99 A Sighting of filterA in Typelevel Rite of Passage 1982  
100 Folding Cheat Sheet #8 - Folding with monoids 2079  
101 The Open-Closed Principle - Part 2 - The Contemporary Version - An Introduction 2116  
102 Folding Cheat Sheet #3 - The universal property of fold 2271  
103 Folding Cheat Sheet #2 - Programmatic and mathematical definitions of right fold and left fold 2284  
104 Function Applicative for Great Good of Leap Year Function 2363  
105 Fibonacci Function Gallery - Part 1 2378  
106 The Functional Programming Triad of map, filter and fold 2388  
107 Drawing Heighway’s Dragon - Part 1 - Recursive Function Rewrite - From Imperative Style in Pascal 64 To Functional Style in Scala 3 2394  
108 Folding Cheat Sheet #7 - The three duality theorems of fold 2450  
109 List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate' 2624  
110 Fibonacci Function Gallery - Part 2 2705  
111 Lambda Expressions and Java 8 - Lambda Calculus, Lambda Expressions, Syntactic Sugar, First Class Functions 2931  
112 Monad Laws Must Be Checked 3238  
113 Folding Cheat Sheet #1 - Folding over recursively defined data structures for natural numbers and lists 3414  
114 Folding Cheat Sheet #6 - Left and right folds and tail recursion 3691  
115 The Open-Closed Principle - Part 1 - The Original Version 3896  
116 N-Queens Combinatorial Puzzle meets Cats 4063  
117 Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid 9141