
On Wed, 2009-12-23 at 00:45 -0800, Ashley Yakeley wrote:
time-extras 1.1.4 contains Data instances for types defined in time-1.1.4. They are in a separate package because they require RankNTypes, which is not Haskell 2010.
Can you remind us why it's not reasonable to have the time package (conditionally) provide Data instances? I don't think we can say that we must restrict ourselves to the Haskell 2010 language extensions when the base package is using Rank2Types in its public API. We clearly need a general solution. It's silly to have every package have a separate companion that provides Data instances. In this instance, CPP doesn't seem like too bad a solution. The people who want to use the Data class are clearly not using compilers that do not support Rank2Types. Duncan