Proposal: free shrinking with QuickCheck

Reid Draper reiddraper at
Tue Nov 26 02:06:32 UTC 2013

On Nov 25, 2013, at 6:09 PM, Bryan O'Sullivan <bos at> wrote:

> On Mon, Nov 25, 2013 at 12:44 PM, Reid Draper <reiddraper at> wrote:
> My experience with both Erlang QuickCheck and simple-check (Clojure) is that it _is_ enough information. In the rare cases it's not, you can always still implement your own logic for shrinking by breaking the Gen abstraction (manipulating the RoseTree yourself).
> It seems we're cautiously optimistic that this could work. I think the next step is up to you.
> If I were in your shoes, here's what I'd do: patch up QuickCheck to make this change, and then for some fairly large handful of widely-used packages on Hackage that have test suites, see how many of them can build more or less unscathed, maybe with the shrink method still present in the typeclass so that packages that define it don't have spurious build failures - and then see how many test suites continue to work okay.
> In other words, I think this is worth pursuing, and that the best way to make progress on it is to try it and see how well it goes. That way, you can come back armed with both a diff and evidence that it's good.

Good advice, thanks.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Libraries mailing list