
dave:
On Wed, Aug 12, 2009 at 5:59 PM, Duncan Coutts
wrote: We suggest updating each package to its latest stable release, except where noted below. In most cases this means relatively insignificant API changes. The cases of particular interest are:
QuickCheck update from version 1.2.x to version 2.x
There is a lot of material on the web explaining the design of QuickCheck 1, how to use it, how to get started, and so forth. I haven't seen any documentation of QC 2 beyond the Haddock pages, which don't seem very helpful for new users.
For example, for shrink it says: "Produces a (possibly) empty list of all the possible immediate shrinks of the given value." So far as I can tell, the concept of a "shrink" is not actually explained anywhere, leaving the user to look at the existing instances and guess what's appropriate. (Also, if I may nit-pick, either "empty" should be in the parentheses with "possibly", or there shouldn't be parentheses.)
It would be nice if the packages in the Haskell Platform met some minimum standards for documentation.
Shrinking is explained in the original QC papers -- it is a killer feature that we somehow lived without. That said, we need an analysis of the missing pieces for our existing libraries to meet standard.