114 Decks Ordered By View Count - Highest First - Chse one - invert order

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