Master pure functional programming, strong static types, algebraic data types, Functor/Applicative/Monad hierarchies, and verified certification.
Complete all 55 lessons (0/55 finished) to unlock your official verified certificate.
Complete a lesson to start
Novice Coder
~6h 25m to complete
Daily lessons and practice completed over the past 7 days
Progress distribution across core beginner tracks
Pure functional programming, GHC toolchain, values, basic types, arithmetic, strings, and booleans.
if-then-else expressions, function guards, pattern matching, case expressions, let-in, and where clauses.
Type signatures, currying by default, partial application, lambdas, map/filter/foldl/foldr, composition (.), and recursion.
Heterogeneous tuples, list operations, range sequences, list comprehensions, zipping, and lazy infinite streams.
Hindley-Milner type inference, standard typeclasses (Eq, Ord, Show, Num), custom typeclasses, newtype, ADTs, and record syntax.
The Maybe type, Either type, pattern matching on error containers, domain errors, binary search trees, and strictness optimization.
Functor fmap (<$>), Applicative (<*>), Monad bind (>>=), do notation desugaring, Monad laws, and monadic utilities.
IO monad separation, file I/O operations, module exports & qualified imports, monad transformers, and MVar concurrency.
Property-based testing with QuickCheck, HUnit unit test specs, monadic parser combinators, and Cabal/Stack architectures.
Comprehensive functional practice challenges, final conceptual assessment quiz, domain expression evaluator capstone, and verified certificate.
Pure functional programming, GHC toolchain, values, basic types, arithmetic, strings, and booleans.
if-then-else expressions, function guards, pattern matching, case expressions, let-in, and where clauses.
Type signatures, currying by default, partial application, lambdas, map/filter/foldl/foldr, composition (.), and recursion.
Heterogeneous tuples, list operations, range sequences, list comprehensions, zipping, and lazy infinite streams.
Hindley-Milner type inference, standard typeclasses (Eq, Ord, Show, Num), custom typeclasses, newtype, ADTs, and record syntax.
The Maybe type, Either type, pattern matching on error containers, domain errors, binary search trees, and strictness optimization.
Functor fmap (<$>), Applicative (<*>), Monad bind (>>=), do notation desugaring, Monad laws, and monadic utilities.
IO monad separation, file I/O operations, module exports & qualified imports, monad transformers, and MVar concurrency.
Property-based testing with QuickCheck, HUnit unit test specs, monadic parser combinators, and Cabal/Stack architectures.
Comprehensive functional practice challenges, final conceptual assessment quiz, domain expression evaluator capstone, and verified certificate.