-- > mzero >>= f = mzero
-- > v >> mzero = mzero
--
- -- (but the instance for 'System.IO.IO' defined in Control.Monad.Error
- -- in the mtl package does not satisfy the second one).
mzero :: m a
-- | an associative operation
mplus :: m a -> m a -> m a
function' are not commutative.
-> foldM f a1 [x1, x2, ..., xm ]
+> foldM f a1 [x1, x2, ..., xm]
==