Maybe Monad
Dmitri Nesteruk · Apress eBooks · 2018
There are several different ways of indicating a presence or absence of a value. This can be a null pointer or an std::optional. The functional operation upon these constructs gives rise to the Maybe Monad.