Ian Lynagh wrote:
How do you know that this isn't:
- that the instance is defined in the Foo.Bar module
- that it is an instance of the class Prelude.Eq.Foo
- that the data type being given an instance is Bar.Baz
- that the function being defined is '=='
?
Indeed you don't, however, the yhc compiler only cares about being able
to separate the module name so the change is sufficient for its purposes.
To give a truely unique and unambiguous name something like
Foo.Bar;Prelude.Eq;Foo.Bar.Baz;==
would be necessary. This would also be a possible encoding if people
thought it was preferable.
Cheers :-)
Tom
_______________________________________________
Yhc mailing list
Yhc@haskell.org
http://www.haskell.org/mailman/listinfo/yhc