🎉 October Learning Month — learn a new software term every day!
An interactive flashcard trainer for software engineering terms.

Functional Programming

In plain terms

A paradigm built on pure functions and avoiding shared mutable state.

Going deeper

Functional programming treats computation as evaluating functions, favoring immutability, first-class functions, and no side effects. This makes code more predictable and testable.

Under the hood

Pure functions and immutability ease reasoning and concurrency; concepts include higher-order functions, recursion, and composition.

Examples

Haskell, map/filter/reduce, React's pure components, Redux reducers.

Think of it like...

Like a kitchen where each recipe takes ingredients and returns a dish without ever changing the pantry.

Feedback & Bug Report