13 Jun
2002
13 Jun
'02
10:30 a.m.
As far as the language report is concerned, I agree with you. (And I wrote a fairly big chunk of text in my old dissertation to explain why.)
I see. Section 7.1 of your thesis explains this in quite detail, and I'm surprised to see that you've even used the exact same example there.
Indeed, if you run Hugs in -98 mode, then it too produces:
Main> :t (==[]) flip (==) [] :: Eq [a] => [a] -> Bool
I run Hugs out of the CVS repository, and in both modes (i.e. both -98, and +98) it produces the type: Eq a => [a] -> Bool However, I can verify the behavior you've mentioned using the Feb'2000 release. Something must have (accidentally?) changed since then. -Levent.