我想将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
函数周围的内容?