Deprecating haskell98 module aliases

Gwern Branwen gwern0 at gmail.com
Tue Mar 9 08:30:28 EST 2010


On Mon, Mar 8, 2010 at 11:22 AM, Gwern Branwen <gwern0 at gmail.com> wrote:
> See http://hackage.haskell.org/trac/hackage/ticket/640
>
> It seems to me that a warning on using the 'haskell98' package
> wouldn't be a bad thing; those modules have since been split apart in
> better modules, the names are ever more unfamiliar, etc.
>
> But Duncan thinks it merits discussion.

While removing haskell98 from packages last night, I found a few more
reasons to dislike it:

* it masks a whole grab-bag of split-base dependencies: random,
process, directory, old-locale, old-time, containers...
* 'import System' is extremely opaque - is the person using
System.Exit, System.Process, System.Environment or what?
* the exported haskell98 modules are out of date; I found Meachem
re-defining the functions repeatM and repeatM_ because a DrIFT module
imported Monad rather than Control.Monad.

-- 
gwern


More information about the Libraries mailing list