I'm quite convinced the Haskell implementations are correct to complain, 
I just don't understand it intuitively. Anyway, here's an even simpler 
example:

compiles fine:

  ordnull :: forall a. (Ord a) => [a] -> Bool
  ordnull = null

  ordtrue :: (forall a. (Ord a) => [a]) -> Bool
  ordtrue = const True

gives type error:

  ordnull :: (forall a. (Ord a) => [a]) -> Bool
  ordnull = null


-- 
Ashley Yakeley, Seattle WA


_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to