我正在逐步阅读 Monad Transformers。在第 6 页,Monad
作者在介绍 的一些子类的同时,给出了以下代码示例:
class (Monad m) => MonadError e m | m -> e where
throwError :: e -> m a
catchError :: m a -> (e -> m a) -> m a
class (Monad m) => MonadReader r m | m -> r where
ask :: m r
local :: (r -> r) -> m a -> m a
部分是什么| m -> e
意思?