[Haskell-cafe] [Haskell] [ANN] GenCheck - a generalized property-based testing framework
carette at mcmaster.ca
Wed Jun 20 18:49:17 CEST 2012
On 20/06/2012 6:56 AM, Henning Thielemann wrote:
> QuickCheck is Haskell-98 and thus is very portable. I see that
> GenCheck needs some more extensions - type families, multi-parameter
> type classes, what else?
FlexibleContexts and FlexibleInstances.
However, I am fairly sure that the multi-parameter type classes are not
in fact needed. Certainly a branch of the current implementation could
easily be done that removes these without harming the functionality
currently implemented, although it might harm some of the
extensibility. And I think most of the uses of
FlexibleContexts/Instances are tied to these MPTCs.
The one use of type families is to implement a view or, if you prefer,
the 'get' part of a lens. With type families, this is extremely
elegant. If portability is really important, this too could probably be
branched into an implementation that does this otherwise.
I am actively working on refactoring the LabelledPartition MPTC into
simpler pieces, but you'll have to wait until gencheck-0.2 for that.
More information about the Haskell-Cafe