[英]How can I QuickCheck Arbitary functions
我是 Haskell 的新手,我试图检查我的功能。 该功能是在类型
treeValidate :: forall a. Ord a => BST a -> Bool
我怎么能验证这一点? 我尝试了 quickChekc treeValidate,但出现此错误: • No instance for (Arbitrary (BST a0)) 由于使用“quickCheck”而产生
编辑修复了错误消息上的错字
您需要为您的类型编写一个Aribtrary
实例。
@WillemVanOnsem 说你需要一个任意实例。 你回答“是的,但它是如何在 quickCheck 上输入的?”。
我不明白你的回答问题。 事实是,你必须写:
instance Arbitrary a => Arbitrary (BST a) where
arbitrary = -- your code here
此处your code here
是您编写的任意定义以生成BST a
类型的任意(随机)值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.