Mark P Jones wrote:
> A couple of months ago, I developed and implemented an extension to
> Hugs that has the potential to make multiple parameter type classes
> more useful. The key idea is to allow class declarations to be
> annoted with `functional dependencies'---an idea that has previously
> received rather more attention in the theory of relational databases.
Neat. And it solves a problem I was kludging around with explicit,
existentially quantified dictionaries.
On a superficial note, how about
class C a b c | (a,b) => c where ...
for
class C a b c | a b -> c where ...
etc?
Also, you say a dependency with zero variables on the right side is
syntactically correct, but later you say it will be reported as an
error because it says nothing. Why bother?
-- Ross Paterson