The report says explicit that instance declarations like
instance C (a,a) where ...,  or for (Int,a) or for [[a]] are not
allowed. I tried to understand this by thinking these types are too
complex, but I had to learn that a type may also be too simple,
i.e. just writing    instance D a    is not allowed either.
I had to look at the grammar to believe it. At least with a context as
in the subject line, this should be useful. However, I don't suggest
(only) this should be added, I rather hope that the people arguing for
multi parameter type classes will make it (if not in Standard Haskell,
then maybe in Curry:).
I now only would like to know why this design decission was made,
are there any problems with the instance declarations I have in mind?

Christian Sievers



Reply via email to