
On Sun, Aug 31, 2008 at 07:11:11PM +0100, Claus Reinke wrote:
"Ian Lynagh"
wrote in message news:20080831121633.GA17919@matrix.chaos.earth.li... On Sun, Aug 31, 2008 at 01:10:56PM +0100, Ross Paterson wrote:
On Sat, Aug 30, 2008 at 01:01:34PM +0100, Ian Lynagh wrote:
OK; so I guess that means the whole Data.Generics.Basics module should stay in base.
Should Data.Generics.Instances (an orphanage) be folded into Data.Generics.Basics?
Sounds good to me.
I just stumbled into this thread by accident. No, the instances should not be folded into Basics. For one, Basics seems likely to remain in base, and half of the instances are under dispute (see previous SYB threads that were copied here). Splitting the instances into standard and dubious prior to deprecating the latter was one of the motivations for moving SYB out of base (apart from Basics and deriving) and for seeking a maintainer for syb.
Since José Pedro Magalhães has offered to take on ownership of the syb package, it would be appropriate to cc him on any discussions related to this, so that he is aware of all developments and possible conflicts.
Hmm. Of course it's not possible to deprecate instances, and there's only GHC bug #2356 to protect against instance clashes. It does seem a bit contradictory to argue that a class is so basic that it belongs in the core, but its instances for core types are unclear. Well at least the instances for [], tuples, Maybe, Either, Array and type constants could go with the Data class, I presume. Presumably Complex could be given definitions of gfoldl and gmapT, and Ratio a definition of gfoldl, though perhaps not gmapT.