
Monads in C++
/
0 Comments
Monads in C++? What a strange name for a post. But it's not so strange. With std::optional, C++17 gets…

Concepts
We stay in the year 2020. With high probability, we will get concepts. Of course, waterproof statements…

The New Ranges Library
A small-time jump, and we are in the year 2020. C++ will get - as far as the future is predictable -…

Fold Expressions
With fold expressions, you can implement Haskell functions foldl, foldr, foldl1, and foldr1 directly…

Recursion, List Manipulation, and Lazy Evaluation
The remaining three characteristics of functional programming are told quite quickly: Recursion, manipulation…

Pure Functions
Pure functions are pretty similar to mathematical functions. They are the reason that Haskell is called…

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…