【发布时间】:2014-12-10 22:44:51
【问题描述】:
我正在生成一个扫雷板,并希望根据第一次点击(实际上不是点击,只是在 cmd 中写入代表点击的字符串)的位置生成板。这是一个问题,因为我必须混合 Gen 和 IO monad。有没有办法将 Gen a 转换为 IO a?
我找到了this 函数。这正是我想要的。但无法导入。
【问题讨论】:
-
我意识到我可以使用 sample' :: Gen a -> IO [a] 并获取第一个结果。但这有点丑陋。
-
@Sibi 它是来自 QuickCheck 模块的 monad,来源:link
-
可以导入。只需
import Test.QuickCheck.Gen。 -
@SiXoS 我刚刚从我的 QuickCheck 2.7.6 将它导入到我的 ghci 中。
-
@SiXoS:在 FP Complete Hoogle 的第一页! fpcomplete.com/hoogle?q=generate
标签: haskell monads quickcheck