数字包具有BigFloat类型。
BigFloat
QuickCheck有Arbitrary类型。
Arbitrary
因为Double是Arbitrary的一个实例,所以我已经可以这样做了:
Double
sample (arbitrary :: Gen Double)
但我不能这么做,因为BigFloat e不是Arbitrary的一个实例
BigFloat e
sample (arbitrary :: Gen (BigFloat Prec10))
如何使BigFloat e成为Arbitrary的实例
更新.我想要一些更多的信息。请看赏金里的评论。
发布于 2016-03-18 07:18:28
将评论中的答案发布为一个社区-wiki的回答:
类似于:
instance Epsilon e => Arbitrary (BigFloat e) where arbitrary = fromRational <$> arbitrary
https://stackoverflow.com/questions/35817514
相似问题