Lennart Augustsson wrote:

 | >   class Cow a where
 | >     pig :: a -> Int
 | >     fly :: Int

 | This is not legal Haskell.  The class variable must occur
 | in every method type.

So, the Haskell compiler gives also an error here. I don't see the
difference between "The class variable must occur in every method type"
(Haskell) and "All the class variables must occur in every method type"
(Gofer).

The Gofer way is rejected, because it is ambiguous, but Haskell
has the same problems, even with one type variable. What I am trying to
say is that this problem hasn't got anything to do with the number of type
variables.

Koen.

--
|  Koen Claessen,               [EMAIL PROTECTED]  |
|                   http://www.cse.ogi.edu/~kcclaess/  |
|------------------------------------------------------|
|  Visiting student at OGI,    Portland, Oregon, USA.  |




Reply via email to