Monads Pattern

The monad structure can also be seen as a uniquely mathematical and compile time variation on the decorator pattern.