Cli*_*ton 6 haskell monad-transformers
这是一堂课,我正在打电话BlahMap:
class BlahMap t where
blahMap :: (m a -> n b) -> t m a -> t n b
Run Code Online (Sandbox Code Playgroud)
这是一个实例BlahMap:
instance BlahMap (ReaderT r) where
blahMap f = ReaderT . fmap f . runReaderT
Run Code Online (Sandbox Code Playgroud)
Haskell 生态系统中是否有现有的类可以执行此操作?或者,我可以只blahMap用现有类mtl或类似的东西编写一个具有适当约束的函数吗?或者我真的发明了一些新东西吗?