标签: haskell
There is an interesting claim MonadIO约束更多地讲述了使用它的函数,而不是直接使用IO:
MonadIO
IO
foo :: MonadIO m => m a -> m a
原因:MonadIO要求IO为正,而不是负, 位置。 这让我们知道,例如,foo在a中是安全的 像ContT或Conduit这样的基于延续的monad。
原因:MonadIO要求IO为正,而不是负, 位置。
这让我们知道,例如,foo在a中是安全的 像ContT或Conduit这样的基于延续的monad。
MonadIO如何执行此操作?总是如此,还是与示例相关?