--- Tom Pledger <[EMAIL PROTECTED]> wrote:
> anatoli writes:
> :
> | The same error message is given for
> |
> | > data Foo a = (Eq b) => MkFoo b
>
> Since the type variable a is orphaned, how about reducing it to this?
>
> > data Foo = forall b . Eq b => MkFoo b
This is possible (the sem
Wed, 7 Feb 2001 01:32:38 -0800 (PST), anatoli <[EMAIL PROTECTED]> pisze:
> > data Foo a = (Eq a) => MkFoo a
What do you mean by this? What is the difference between that and
data Foo a = MkFoo a
except that the latter is more general?
> The same error message is given for
>
> > data Foo a
Hi everybody:
I think I've found what's the problem. Still no solution in sight :(
The problem has nothing to do with fundeps. Consider an example:
> data Foo a = (Eq a) => MkFoo a
This gives the same error message: type variable a is not locally
bound. Apparently, 'a' in 'Eq a' hides 'a' in '
nubie nubie writes:
|
| --- Tom Pledger <[EMAIL PROTECTED]> wrote:
| > That line of reasoning establishes that e is constrained on the right
| > hand side of the "=". However, it's still bound (by an implicit
| > "forall e") on the left hand side of the "=". The problem is that e
| > can
--- Tom Pledger <[EMAIL PROTECTED]> wrote:
> That line of reasoning establishes that e is constrained on the right
> hand side of the "=". However, it's still bound (by an implicit
> "forall e") on the left hand side of the "=". The problem is that e
> can leak details about c to parts of the p