On Fri, May 21, 2010 at 3:56 AM, Max Bolingbroke <batterseapo...@hotmail.com> wrote: > On 21 May 2010 01:58, Carlos Camarao <carlos.cama...@gmail.com> wrote: >> But this type-correct program would become not typeable if >> instances such as the ones referred to before (by Daniel Fischer) > > I was thinking this through, and the situation is more complex than I > had thought. > > It seems that single param type classes enjoy a nice property: > * Adding an instance to the module defining the class cannot conflict > with any non-orphan instance defined elsewhere > * Adding an instance for a type for a class *to the module defining > that type* cannot conflict with any non-orphan instance defined > elsewhere
This is only true in the absence of recursive imports. Otherwise, those points imply that I can put one instance in the module defining the type and another in the module defining the class without conflict. -- Dave Menendez <d...@zednenem.com> <http://www.eyrie.org/~zednenem/> _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe