I wrote this Gen to generate lines of texts without \NUL and \n: fullLinesProp = forAll linesGen ...
linesGen = listOf . listOf $ arbitrary `suchThat` (`notElem` ['\NUL', '\n']) -- alternatively: linesGen = arbitrary `suchThat` (all (all (`notElem` ['\NUL', '\n']))) However, I just realized that QuickCheck disables shrinking when I use this instead of (linesGen = arbitrary :: Gen [String]). Why is that? Is there a way to get what I want + shrinking without defining a custom shrink (e.g. forAllShrink)? Thanks _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe