beta
Login
🌙
Introduction
1
Introduction
2
Origins of Functional Programming
3
Pagaridms: Declarative and Functional
4
ES6: Arrow & Anonymous Functions
5
ES6: let & const
Array Manipulation
6
Map & Filter
7
Push & Pop
8
Slice & Splice
9
Every, Some, Find & FindIndex
10
Sort
11
Reduce
12
[LAB] Avoid loops with Reduce
13
[LAB] Recreate Map and Filter with Reduce
14
Immutable Helper Libraries
Functions
15
Functions & Procedures
16
Arguments & Parameters
17
Side-Effects
18
Pure Functions
19
Referential Transparency
20
Avoiding Side-Effects
21
Patching Side-Effects
22
This
23
Higher-Order Functions
24
Memoization & Function Decorators
25
Easy & Lazy Execution
26
Observables & Lazy Execution
27
Continuation-Passing Style
28
[BONUS] Introduction to Redux
Recursion
29
Recursion
30
Proper Tail Calls
31
Continuation-Passing Style & Recursion
32
Trampolines
Composition
33
Hindley-Milner Syntax
34
Pointfree Syntax
35
Closure & Partial Application
36
Currying
37
Function Composition
38
Compose & Pipe
39
Associativity
40
Reduce & Fold
41
Converge: composing functions with multiple parameters
42
[Exercises] Composition
43
[Bonus] Transducers
Object-Oriented Programming
44
OOP: Object-Oriented Programming
45
OOP & Immutability
46
Inheritance VS Composition
47
Classes, Constructor Functions & Factories
ADT - Introduction
48
The purpose of Algebraic Data Types
49
Partial Functions
50
Algebraic Data Types
51
Option/Maybe - Representing the absence of something
52
Either/Result - Representing an error
53
IO
54
Task
ADT - Composition
55
Functors
56
Pointed Functors
57
Applicative Functors
58
Applicative Functors - Lift
59
Monads
60
Laws
61
Array, jQuery, Promise... Are they monads?
62
Exercises with ADTs
63
Concurrent Tasks
64
Natural Transformations
ADT - Bonus
65
Maths insight
66
Category Theory insight
67
Validation - Representing multiple errors
68
Writer - Representing logs
69
Reader - Representing dependencies
70
State - Representing state changes
71
Conclusions: where to go from here
đź«· This book is not ready to buy yet!