Open andreasabel opened 5 days ago
The demarkation line between quickcheck and quickcheck-instances is a point of some discussion. I would like QuickCheck to supply every instance that's in base, but for legacy reasons that's a bit controversial and causes some headaches.
My goal is to figure out a way to get to the point where all base versions after some arbitrary (current?) version are supported directly by QuickCheck. That would at least share the burden a bit as a first step, and then we can move to include all supported base versions and all compatibility packages for e.g. semigroups.
Would be great if we had
Arbitrary
instances for all the relevant data types ofbase
, including non-empty lists which are nowadays quite standard. (The instance forData.List.NonEmpty.NonEmpty
would be trivial to add with an instance for wrapperNonEmptyList
already existing.)ATTN: @MaximilianAlgehed
P.S.: currently this instance is supplied by package
quickcheck-instances
https://github.com/haskellari/qc-instances . Where is the demarkation line? How is it defined which instances should be inQuickCheck
?