114 Decks Ordered By Slide Count - Lowest First - Chse one - invert order

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