将monad转换为monadparallel

时间:2015-10-16 09:08:16

标签: haskell parallel-processing functional-programming monads

我想将liftM2中的Control.Monad函数转换为liftM2中的Control.Monad.Parallel函数。我尝试将导入包从Control.Monad更改为Control.Monad.Parallel,然后GHC输出错误,例如“没有MonadParallel的实例”。

您能帮助我或提供一些关于如何将monad转换为MonadParallel类型的提示吗?

示例代码说明如下:

MoPar.liftM2 (,) (randNum (0, maxX) gen) (randNum (0, maxY) gen) >>= do
        visit gen visited rWalls bWalls
    MoPar.liftM2 Maze (freeze rWalls) (freeze bWalls)

MoPar表示Monad.Parallel个包,会发生错误。如果我将其更改为Mon Control.Monad并将通过编译。我是否会错过源代码中liftM2函数周围的内容?

0 个答案:

没有答案