In article <[EMAIL PROTECTED]>, [EMAIL PROTECTED] 
wrote:

GHCi is correct to complain:

> class Vspace a v | v -> a

OK, the first parameter ("a") depends on the second ("v").

> instance Vspace a a where

And this determines it: the first parameter must always be the same as 
the second.

> instance (Vspace a v) => Vspace a (c->v) where

This is incompatible with the previous instance declaration, since "a" 
is not the same as "c -> v". And any instance decl that were permitted 
by the fundep would in any case overlap.

-- 
Ashley Yakeley, Seattle WA

_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to