Re: :kind feature request in ghci

On Saturday 27 March 2004 16:33, S. Alexander Jacobson wrote:
Alternatively, is there another way to figure out how to create an instance of a class like this?
class MyClass a b where emptyVal::a b
Here are one of the thing that don't work:
type MyType a = [a] instance MyClass (MyType a) a where emptyVal=[]
And I have no idea why...
Well, you've been told why. Anyway, why do you insist on using a two parameter type class? The more general class MyClass a where emptyVal::a would do exactly the same. To make type constructor B applied to type C an instance you just write instance MyClass (B C) where ... for instance instance MyClass [a] where emptyVal=[] If you enable overlapping instances you could even add instance MyClass [Int] where emptyVal=[0] The only difference to your 2-parameter class is that now you can declare instances for simple types like Integer too. Is that a problem? Ben
participants (1)
-
Benjamin Franksen