[Yhc] Some more changes to core

Ian Lynagh igloo at earth.li
Sat Aug 4 20:35:48 EDT 2007


On Sat, Aug 04, 2007 at 11:01:38PM +0100, Tom Shackell wrote:
> 
> Consider the following class instance
> 
>    module Foo.Bar
> 
>    data Baz = Baz
> 
>    instance Eq Baz where
>      a == b = True
> 
> The Core generated for the '==' function would currently look like:
> 
>    Foo.Bar.Prelude.Eq.Foo.Bar.Baz.== a b = True
> 
> This encodes:
>    - that the instance is defined in the Foo.Bar module
>    - that it is an instance of the class Prelude.Eq
>    - that the data type being given an instance is Foo.Bar.Baz
>    - that the function being defined is '=='
> 
> suggest changing the name Core generates to
> 
>     Foo.Bar;Prelude.Eq.Foo.Bar.Baz.==

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 '=='

?


Thanks
Ian



More information about the Yhc mailing list