Functor => Pointed => Applicative => Monad