【发布时间】:2015-09-04 10:06:21
【问题描述】:
我正在努力解决这个问题 - QuickCheck 如何为所有类型生成一个值?也许它可以伪造它,并且只测试具有上下文Arbitrary a => a 的类型?
我只是想知道有人如何为具有存在类型的数据构造函数创建一个任意实例:
data Foo a = Foo a (forall b. (a -> b, b -> a))
【问题讨论】:
-
是否可以有该类型的值?还有,那不是二阶类型,不是存在类型吗?
-
确实,该类型的唯一值看起来至少和
Foo a1 (const undefined, const a2)一样糟糕
标签: haskell quickcheck existential-type