monads implcit class case class higher-order functions functional programming
Tout plus