試圖創建一個基類,我可以從中派生出不同類型。以下有什麼問題?如何正確實例化Haskell中的類?
class (Eq a) => MyClass a
data Alpha = Alpha
instance MyClass Alpha where
Alpha == Alpha = True
我得到的錯誤:
test.hs:5:10: `==' is not a (visible) method of class `MyClass'
Failed, modules loaded: none.
謝謝。所以如果我有一個繼承的字符串,我必須實例化每個派生類,並且不能一次完成它們。 – me2
是正確的,但你應該把它看作更像「如果一個實例化MyClass,它首先需要實例化Eq」而不是繼承。 – sepp2k