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

# Title Views  
1 Non-strict functions, bottom, and Scala by-name parameters 428  
2 Imperative Bowling Kata - 20 Years On - Delegating Menial Tasks to Github Copilot Chat - using Scala in IntelliJ IDEA 474  
3 Symmetry in the interrelation of flatMap/foldMap/traverse and flatten/fold/sequence 533  
4 Year when lambda functions were introduced in various languages 533  
5 De Morgan's Laws are Monoid Homomorphisms 551  
6 Monad as Functor with pair of Natural Transformations 555  
7 Addendum to `Monads do not Compose` 565  
8 Monad Transformers - Part 1 566  
9 Functor Composition 586  
10 Monads do not Compose 600  
11 Function Composition - forward composition versus backward composition 606  
12 Writer Monad for logging execution of functions 711  
13 Ad hoc Polymorphism using Type Classes and Cats 716  
14 Monoids - Part 2 - With examples using Scalaz and Cats 734  
15 Sequence and Traverse - Part 2 738  
16 State Monad 748  
17 Natural Transformations 752  
18 Sequence and Traverse - Part 3 759  
19 Functional Effects - Part 2 761  
20 Monoids - Part 1 - With examples using Scalaz and Cats 766  
21 Sequence and Traverse - Part 1 766  
22 Left and Right Folds - Comparison of a mathematical definition and a programmatic one 780  
23 Scala 3 by Example - Algebraic Data Types for Domain Driven Design - Part 2 787  
24 Functional Effects - Part 1 801  
25 Game of Life - Polyglot FP - Haskell and Scala - Part 2 801  
26 Folding Cheat Sheet Series Titles 808  
27 Monad Fact #2 831  
28 Game of Life - Polyglot FP - Haskell and Scala - Part 3 837  
29 The aggregate function - from sequential and parallel folds to parallel aggregation 850  
30 Monad Fact #5 851  
31 Folding Unfolded - Part 4 854  
32 Functor Laws 855  
33 Function Applicative for Great Good of Palindrome Checker Function 859  
34 Monad Fact #3 859  
35 Folding Unfolded - Part 3 860  
36 Folding Unfolded - Part 5 865  
37 Scala 3 by Example - Algebraic Data Types for Domain Driven Design - Part 1 866  
38 Fusing Transformations of Strict Scala Collections with Views 867  
39 Arrive at monads by going from composition of pure functions to composition of effectful functions 869  
40 Applicative Functor - Part 3 870  
41 Monad Fact #6 870  
42 A sighting of traverseFilter and foldMap in Practical FP in Scala 876  
43 The Uniform Access Principle 877  
44 The Functional Programming Triad of Folding, Scanning and Iteration - A first example in Scala and Haskell 884  
45 ‘go-to’ general-purpose sequential collections - from Java To Scala 893  
46 Side by Side - Scala and Java Adaptations of Martin Fowler’s Javascript Refactoring Example 904  
47 Sum and Product Types - The Fruit Salad & Fruit Snack Example 907  
48 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 4 910  
49 The Debt Metaphor - Ward Cunningham in his 2009 YouTube video 914  
50 Quicksort - a whistle-stop tour of the algorithm in five languages and four paradigms 916  
51 A sighting of sequence function in Practical FP in Scala 924  
52 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 2 931  
53 The Monad Fact Series 933  
54 Sierpinski Triangle - Polyglot FP for Fun and Profit - Haskell and Scala 934  
55 Monad Fact #4 936  
56 Applicative Functor - Part 1 960  
57 A sighting of traverse_ in Practical FP in Scala 961  
58 Monad Fact #1 977  
59 Folding Unfolded - Part 2 985  
60 Folding Unfolded - Part 1 1001  
61 Scala 3 enum for a terser Option Monad Algebraic Data Type 1015  
62 Game of Life - Polyglot FP - Haskell and Scala - Part 1 1021  
63 The Sieve of Eratosthenes - Part 1 1026  
64 Computer Graphics in Java and Scala - Part 1b 1027  
65 Kleisli Composition 1029  
66 Nat, List and Option Monoids - From scratch - Combining and Folding - An example 1034  
67 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 3 1047  
68 Applicative Functor - Part 2 1055  
69 Definitions of Functional Programming 1072  
70 From Scala Monadic Effects to Unison Algebraic Effects 1075  
71 Folding Cheat Sheet #5 - Folding a list right and left using Cons and Nil results in the identity and reverse functions 1080  
72 Kleisli composition, flatMap, join, map, unit - implementation and interrelation - V2 updated for Scala 3 1081  
73 Functional Core and Imperative Shell - Game of Life Example - Haskell and Scala 1087  
74 Test Doubles - Terminology, Definitions and Illustrations - with Examples - Part 1 1103  
75 Drawing Heighway’s Dragon - Part 2 - Recursive Function Simplification - From 2^n Recursive Invocations To n Tail-Recursive Invocations Exploiting Self-Similarity 1108  
76 Refactoring: A First Example - Martin Fowler’s First Example of Refactoring, Adapted to Scala 1116  
77 The Sieve of Eratosthenes - Part 2 - Genuine versus Unfaithful Sieve 1139  
78 Computer Graphics in Java and Scala - Part 1 1155  
79 Algebraic Data Types for Data Oriented Programming - From Haskell and Scala to Java 1166  
80 Drawing Heighway’s Dragon - Part 3 - Simplification Through Separation of Concerns - Rotation Without Matrix Multiplication 1181  
81 The Expression Problem Part 2 1202  
82 N-Queens Combinatorial Problem - Polyglot FP for Fun and Profit – Haskell and Scala - Part 1 1214  
83 AI Concepts - MCP Neurons 1223  
84 Imperative Bowling Kata - 20 Years On - Delegating Menial Tasks to AI Coding Tool 'Claude Code' 1242  
85 The Expression Problem Part 1 1247  
86 Scala Left Fold Parallelisation - Three Approaches 1292  
87 Refactoring: A First Example - Martin Fowler’s First Example of Refactoring, Adapted to Java 1355  
88 Drawing Heighway’s Dragon - Part 4 - Interactive and Animated Dragon Creation 1371  
89 Combinatorial Interview Problems with Backtracking Solutions - from Procedural to Functional Programming - Part 2 1400  
90 The Nature of Complexity in John Ousterhout’s Philosophy of Software Design 1502  
91 Folding Cheat Sheet #9 - List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate' 1561  
92 Compositionality and Category Theory 1581  
93 From Subtype Polymorphism To Typeclass-based Ad hoc Polymorphism - An Example 1697  
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 1730  
95 Combinatorial Interview Problems with Backtracking Solutions - from Procedural to Functional Programming - Part 1 1761  
96 Hand Rolled Applicative User Validation Code Kata 1862  
97 Point-free or Die - Tacit Programming in Haskell 1913  
98 ApplicativeError functions handling and recovering from errors: A mnemonic to recall their signatures from their names 1948  
99 Tagless Final Encoding - Algebras and Interpreters and also Programs 1991  
100 A Sighting of filterA in Typelevel Rite of Passage 2015  
101 Folding Cheat Sheet #8 - Folding with monoids 2114  
102 The Open-Closed Principle - Part 2 - The Contemporary Version - An Introduction 2152  
103 Folding Cheat Sheet #3 - The universal property of fold 2303  
104 Folding Cheat Sheet #2 - Programmatic and mathematical definitions of right fold and left fold 2324  
105 Fibonacci Function Gallery - Part 1 2416  
106 Function Applicative for Great Good of Leap Year Function 2423  
107 The Functional Programming Triad of map, filter and fold 2438  
108 Drawing Heighway’s Dragon - Part 1 - Recursive Function Rewrite - From Imperative Style in Pascal 64 To Functional Style in Scala 3 2438  
109 Folding Cheat Sheet #7 - The three duality theorems of fold 2511  
110 List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate' 2659  
111 Fibonacci Function Gallery - Part 2 2741  
112 Lambda Expressions and Java 8 - Lambda Calculus, Lambda Expressions, Syntactic Sugar, First Class Functions 3046  
113 Monad Laws Must Be Checked 3341  
114 Folding Cheat Sheet #1 - Folding over recursively defined data structures for natural numbers and lists 3448  
115 Folding Cheat Sheet #6 - Left and right folds and tail recursion 3841  
116 The Open-Closed Principle - Part 1 - The Original Version 4004  
117 N-Queens Combinatorial Puzzle meets Cats 4208  
118 Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid 9323