我有以下,创建“类型”
type Pos = (Int, Int)
我要生成这种类型的随机值有一些限制(这两个必须是0-8)
我会的任意intance喜欢做类似
instance Arbitrary Pos where
arbitrary = do x <- choose(0,8)
y <- choose(0,8)
return (x,y)
然后在我的测试中使用它有有效位置。
BC我走样这是不行的(?)元组
我试图其他方法使用的影响在我的测试说
prop_my_prop (x,y) = abs x < 9 && abs y < 9 ==> ...
,但我认为这是相当丑陋理论上它可能耗尽快速检测(超过1000次)。
这是一项任务,所以我只想要一些指示,看看或如何处理这个问题,我不允许更改Pos。
我不允许将类型Pos更改为数据Pos – skyw00lker 2014-10-09 14:10:18
然后您必须将您的生成器编写为函数而不是类型的方法。 – 2014-10-09 14:20:43