At 2002-01-21 01:15, Koen Claessen wrote: > | But this gives an error: > | > | emptyList :: (Ord a) => [a] > | emptyList = [] > | > | isempty :: Bool > | isempty = null emptyList > >Here is another (very similar) case: > > emptyList :: [a] > emptyList = [] > > showEmptyList :: String > showEmptyList = show emptyList
>Now, you might argue that the type error resulting from this >program is too restrictive, since the empty list can always >be shown as: "[]". Of course not, show doesn't know how to show things of arbitrary type [a]. But null is supposed to work on _any_ list. And just from the type of emptyList, Haskell knows that it is a list of something. -- Ashley Yakeley, Seattle WA _______________________________________________ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
