112 Decks Ordered By Slide Count - Highest First - Chse one - invert order

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