maintaining pre-AMP+FTP-Prelude in external package
Henning Thielemann
lemming at henning-thielemann.de
Wed May 13 11:50:17 UTC 2015
The Prelude of GHC-7.10/base-4.8 introduces several name clashes mostly
due to the AMP and FTP: (<*) clashes with Accelerate, (<*>) clashes with
NumericPrelude, (and (<>) would clash with HMatrix if added to Prelude),
'join', 'pure', 'traverse', 'fold' clash with custom defined functions.
"import Prelude hiding (pure)" is not yet supported by GHC-7.4 (as shipped
with Ubuntu 12.04) and in newer GHC versions it generates an annoying
warning. The only remaining option is to explicitly import identifiers
from Prelude.
What about maintaining the pre-AMP+FTP-Prelude in a package on Hackage?
Then we could maintain compatibility with a range of GHC versions by
disabling import of Prelude and importing preamplified (so to speak)
Prelude. The base-compat package seems to support the other way round,
that is, providing new 'base' functions to old compilers.
More information about the Libraries
mailing list