Immutable Data

A key to purely functional languages is that their data are immutable. Therefore, assignments such as…

Higher-Order Functions

Higher-order functions are the pendant to First-Class Functions because higher-order functions can take…

First-Class Functions

One of the characteristics of functional programming is first-class functions. First-class functions…

The Definition of Functional Programming

The definition of functional programming is relatively easy. Functional programming is programming with…

Functional in C++17 and C++20

Which functional feature can we expect with C++17, and for which functional feature can we hope with…

Functional in C++11 and C++14: Dispatch Table and Generic Lambdas

My favorite example, the dispatch table, shows how nicely the features in modern C++ work together. A…

Functional in TR1 and C++11

This post continues our journey through the functional features of classical, modern, and future C++.…

Functional in C++98

C++ is not a functional programming language, but you can program in a functional style. What are the…

Object-Oriented, Generic, and Functional Programming

C++ is not a functional programming language. C++ has its roots in procedural and object-oriented programming.…