
Functional Programming
Course Index
28 Lessons · 3 Sections
Master functional programming — the paradigm treating computation as mathematical function evaluation. Covers pure functions, immutability, higher-order functions, composition, monads & FP in JavaScript, Python, Java, Scala & Haskell. Includes 4 production builds: data pipeline, error-handling system, OOP refactor & functional state machine.
28Lessons
3Sections
4Projects
FreeAccess
Section 1FP FundamentalsLessons 1–10
Lesson 1
What is Functional Programming?
Lesson 2
Pure Functions & Referential Transparency
Lesson 3
Immutability & Persistent Data Structures
Lesson 4
First-Class & Higher-Order Functions
Lesson 5
Function Composition
Lesson 6
Currying & Partial Application
Lesson 7
Recursion & Tail Call Optimisation
Lesson 8
Map, Filter & Reduce
Lesson 9
Closures & Lexical Scope
Lesson 10
Declarative vs Imperative Programming
Section 2Advanced FP & Language ImplementationsLessons 11–22
Lesson 11
Functors & Mapping over Context
Lesson 12
Monads: Maybe, Either & IO
Lesson 13
Managing Side Effects in FP
Lesson 14
Algebraic Data Types & Pattern Matching
Lesson 15
Lazy Evaluation
Lesson 16
Monoids & Semigroups
Lesson 17
FP in JavaScript: Ramda & Lodash/fp
Lesson 18
FP in Python
Lesson 19
FP in Java: Streams & Lambdas
Lesson 20
FP in Scala
Lesson 21
FP in Haskell: Pure FP Language
Lesson 22
FP Patterns: Railway-Oriented Programming
Section 3FP & Concurrency, 2026 Trends & ProjectsLessons 23–28