It does not seem like printing the result value from IO (), because with a more complicated example for lists. t :: [a] -> Bool t x = True
then it randomly generates values of type [()]. *Quick> verboseCheck t 0: [] 1: [()] 2: [(),(),()] 3: [] 4: [()] 5: [(),(),(),()] I just wonder how the a got instantiated to (). Thanks, hugo On Tue, Jun 17, 2008 at 11:05 AM, Dougal Stanton <[EMAIL PROTECTED]> wrote: > 2008/6/17 Hugo Pacheco <[EMAIL PROTECTED]>: > > Hi all, > > There is something about polymorphic tests in QuickCheck that I do not > > understand. > > If you write the simplest dummy test function > > tst :: a -> Bool > > tst _ = True > > and evaluate it we get > >> verboseCheck tst > > 0: > > () > > 1: > > () > > ... > > How come did the polymorphic value a get instanciated to ()? Is this done > > via the Testable type class? > > I haven't got something here to check with, but from the formatting it > looks like every odd line is a randomly-chosen boolean value, and the > following line is the result? It might be just printing the result > value of IO (). Maybe try a more complete test to see how that looks? > > Cheers, > > D > > > -- > Dougal Stanton > [EMAIL PROTECTED] // http://www.dougalstanton.net > -- www.di.uminho.pt/~hpacheco
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe