On Sun, Jul 26, 2009 at 3:34 AM, Ian Lynagh <igloo@earth.li> wrote:
Hi all,

I've made a ticket and proposal page for making the labelled field
syntax stricter, e.g. making this illegal:

   data A = A {x :: Int}

   y :: Maybe A
   y = Just A {x = 5}

and requiring this instead:

   data A = A {x :: Int}

   y :: Maybe A
   y = Just (A {x = 5})

http://hackage.haskell.org/trac/haskell-prime/ticket/132
http://hackage.haskell.org/trac/haskell-prime/wiki/StricterLabelledFieldSyntax

In general, I think it would be a good idea to provide some statistics of how many packages would break as the result of a backwards incompatible change. Without that data I find it hard to do a cost-benefit analysis. So I hereby suggest that we make a recompile of Hackage a requirement for any breaking language changes. I understand that it might not be that easy to recompile all of Hackage at the moment so we should try to come up with some step-by-step instructions on how to do it. In the future it would be nice to have a little script that does it and spits out some statistics.

Cheers,

Johan