相关疑难解决方法(0)

如何在quickCheck中使用'oneof'(Haskell)

我正在尝试编写一个改变数独的道具,然后检查它是否仍然有效.

但是,我不确定如何正确使用"oneof"功能.你能给我一些提示吗?

prop_candidates :: Sudoku -> Bool
prop_candidates su = isSudoku newSu && isOkay newSu
    where
        newSu       = update su aBlank aCandidate
        aCandidate  = oneof [return x | x <- candidates su aBlank]
        aBlank      = oneof [return x | x <- (blanks su)]
Run Code Online (Sandbox Code Playgroud)

这里有一些更多信息......

type Pos = (Int, Int)
update :: Sudoku -> Pos -> Maybe Int -> Sudoku
blanks :: Sudoku -> [Pos]
candidates :: Sudoku -> Pos -> [Int]
[return x | x <- (blanks example)] :: (Monad …
Run Code Online (Sandbox Code Playgroud)

haskell functional-programming quickcheck ghci

5
推荐指数
1
解决办法
1682
查看次数