I agree with Edward here. I don't see enough value in the name change to warrant all the breakage and conditional compilation hacks that will ensue.

On Sunday, October 13, 2013, Edward A Kmett wrote:
There are those of us who need to maintain code that works on platforms older than GHC HEAD.

This would make it impossible to keep an API working across the change.

-Edward

On Oct 12, 2013, at 4:50 PM, Dan Burton <danburton.email@gmail.com> wrote:

The back-compat can't replace code that uses the `Identity` data constructor, though. It will also make existing code bases ambiguous if they have defined their own `Id` data constructor. Pretty easy fixes, but nontrivial, so worth noting. Despite the pain involved, I think that Identity -> Id when moving this functor into base is a good choice.

-- Dan Burton


On Sat, Oct 12, 2013 at 12:40 PM, Dag Odenhall <dag.odenhall@gmail.com> wrote:

On Sat, Oct 12, 2013 at 7:32 PM, Edward Kmett <ekmett@gmail.com> wrote:

On a related note Simon recently asked the core libraries committee if we should move Data.Functor.Identity into base.

How about calling that one Id then (already in Data.Traversable but not exported). This would be more consistent with Const not being called Constant. Maybe also put it in Control.Applicative or move both somewhere better.

For back-compat, transformers could continue to export those modules, with aliases like type Identity = Id.


_______________________________________________
Libraries mailing list
Libraries@haskell.org
http://www.haskell.org/mailman/listinfo/libraries