[Haskell-cafe] MRP, 3-year-support-window, and the non-requirement of CPP
Andrey Chudnov
achudnov at gmail.com
Tue Oct 6 21:52:59 UTC 2015
Herbert, unfortunately your logic would break if there is another
invasive library change somewhere between 7.10 and 8.2 as that would
require introducing a whole another set of #ifdef's. I've been using GHC
since 6.2. Since then new versions of GHC have been breaking builds of
foundational packages every 1-2 releases. I'm actually all for decisive
and unapologetic language evolution, but there should be a safety net so
there's less risk of breakage. And, the main sentiment in the discussion
(which, I admit, I have followed very loosely) seems to be that #ifdef's
are a poor choice for such a net.
So, forgive me if that has been discussed, but what has happened to the
`haskell2010` package that is supposed to provide a compatibility layer
for the standard library? Are people using it? Why hasn't it been
updated since March 2014? Is it really impossible to provide a legacy
Haskell2010 base library compatibility layer with AMP in play?
Perhaps it's my ignorance speaking, but I really think if packages like
`haskell2010` and `haskell98` were actively maintained and used, we
wouldn't have issues like that. Then you could say: "if you depend on
the GHC `base` package directly, your portability troubles are well
deserved".
On 10/06/2015 03:10 AM, Herbert Valerio Riedel wrote:
> So when GHC 8.2 is released, your support-window requires you to support
> GHC 7.10 and GHC 8.0 in addition to GHC 8.2.
>
> At this point you'll be happy that you can start dropping those #ifdefs
> you added for GHC 7.10 in your code in order to adapt to FTP & AMP.
More information about the Haskell-Cafe
mailing list