Evan Laforge <[email protected]> wrote in article <[email protected]> in gmane.comp.lang.haskell.cafe: > Incidentally, I've never been able to figure out how to use > QuickCheck. Maybe it has more to do with my particular app, but > QuickCheck seems to expect simple input data and simple properties > that should hold relating the input and output, and in my experience > that's almost never true. For instance, I want to ascertain that a > function is true for "compatible" signals and false for "incompatible" > ones, where the definition of compatible is quirky and complex. I can > make quickcheck generate lots of random signals, but to make sure the > "compatible" is right means reimplementing the "compatible" function. > Or I just pick a few example inputs and expected outputs.
Besides those example inputs and expected outputs, what about: If two signals are (in)compatible then after applying some simple transformations to both they remain (in)compatible? A certain family of signals is always compatible with another family of signals? Silence is compatible with every signal? Every non-silent signal is (in)compatible with itself (perhaps after applying a transformation)? -- Edit this signature at http://www.digitas.harvard.edu/cgi-bin/ken/sig <INSERT PARTISAN STATEMENT HERE> _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
