2015-10-05 17:09 GMT+02:00 Gershom B <gersh...@gmail.com>:

> On October 5, 2015 at 10:59:35 AM, Bryan O'Sullivan (b...@serpentine.com)
> wrote:
> [...] As for libraries, it has been pointed out, I believe, that without
> CPP one can write instances compatible with AMP, and also with AMP + MRP.
> One can also write code, sans CPP, compatible with pre- and post- AMP. [...]
>

Nope, at least not if you care about -Wall: If you take e.g. (<$>) which is
now part of the Prelude, you can't simply import some compatibility module,
because GHC might tell you (rightfully) that that import is redundant,
because (<$>) is already visible through the Prelude. So you'll have to use
CPP to avoid that import on base >= 4.8, be it from it Data.Functor,
Control.Applicative or some compat-* module. And you'll have to use CPP in
each and every module using <$> then, unless I miss something obvious.
AFAICT all transitioning guides ignore -Wall and friends...
_______________________________________________
Haskell-prime mailing list
Haskell-prime@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-prime

Reply via email to