[Haskell-cafe] ANN: base-compat updated for AMP + request for collaboration

Simon Hengel sol at typeful.net
Tue Mar 31 13:53:02 UTC 2015


Hi,
I updated base-compat[1] for the recent AMP/Foldable/Traversable changes
and base-4.8.0.0.  A new version 0.6.0 is on Hackage.

The purpose of base-compat is to provide a way to write code that works
with multiple versions of GHC without the need for CPP.  The idea is to
have .Compat modules (e.g. Control.Exception.Compat) that provide the
same interface across all supported versions of GHC (we test GHC 7.* on
travis and I test 6.12.3 manually).

The main focus of this release is to make Prelude.Compat as complete as
possible to help with the AMP/Foldable/Traversable transition.
Prelude.Compat now exposes the exact same interface as Prelude from
base-4.8.0.0.  It can be used together with -XNoImplicitPrelude to write
code that works with all supported versions of GHC, e.g.:

    {-# LANGUAGE NoImplicitPrelude #-}
    import Prelude.Compat

    main :: IO ()
    main = mapM_ print (Just 23)

Prelude.Compat is complete and we have tests that ensure that the
interface is the same for all supported versions of GHC.  But other
modules still need more work.  In the past base-compat did not get the
love it deserves, but I'm committed to put more effort into it and make
it as complete as possible.

Any help with that effort would be greatly appreciated.  If you want to
help, please open issues and pull requests on GitHub, or send me
feedback by email or on IRC (solirc on Freenode).

Cheers,
Simon

[1] http://hackage.haskell.org/package/base-compat


More information about the Haskell-Cafe mailing list