This is a list of functional programming topics.
Foundational concepts Programming paradigm Declarative programming Programs as mathematical objects Function-level programming Purely functional programming Total functional programming Lambda programming Static scoping Higher-order function Referential transparency
Lambda calculus
Currying Lambda abstraction Church–Rosser theorem Extensionality Church numeral
Combinatory logic
Fixed point combinator SKI combinator calculus B, C, K, W system SECD machine Graph reduction machine
Intuitionistic logic
Sequent, sequent calculus Natural deduction Intuitionistic type theory BHK interpretation Curry–Howard correspondence Linear logic Game semantics
Type theory
Typed lambda calculus Typed and untyped languages Type signature Type inference Datatype Algebraic data type (generalized) Type variable First-class value Polymorphism Calculus of constructions
Denotational semantics
Domain theory Directed complete partial order Knaster–Tarski theorem
Category theory
Cartesian closed category Yoneda lemma
Operational issues Graph reduction Combinator graph reduction Strict programming language Lazy evaluation, eager evaluation Speculative evaluation Side effect Assignment Setq Closure Continuation Continuation passing style Operational semantics State transition system Simulation preorder Bisimulation Monads in functional programming Exception handling Garbage collection
Programming languages
Clean Clojure Elixir Erlang FP F# Haskell Glasgow Haskell Compiler Gofer Hugs Template Haskell ISWIM JavaScript Kent Recursive Calculator Lisp AutoLISP Common Lisp Emacs Lisp Scheme Mercury Miranda ML (Category:ML programming language family) OCaml Standard ML Pure, predecessor Q Q (programming language from Kx Systems) Quantum programming Scala SISAL Ωmega
