Method contexts

Marcin 'Qrczak' Kowalczyk qrczak at knm.org.pl
Sat Feb 10 11:15:46 EST 2001


Sat, 10 Feb 2001 16:36:52 +0100, Hannah Schroeter <uk1o at rz.uni-karlsruhe.de> pisze:

> Somehow I don't understand this. Eq a is required for Member [a] a,

It is not required for Member [a] a, but for the member method.

class Member c k where
    member :: Eq k => c -> k -> Bool

instance Member [a] a where
    member = flip elem

The above class and instance should be legal. Note that Member [a] a
holds for any a, and the type of member is
    member :: (Member c k, Eq k) => c -> k -> Bool

-- 
 __("<  Marcin Kowalczyk * qrczak at knm.org.pl http://qrczak.ids.net.pl/
 \__/
  ^^                      SYGNATURA ZASTÊPCZA
QRCZAK





More information about the Glasgow-haskell-bugs mailing list