base package

Roman Cheplyaka roma at ro-che.info
Sat Feb 23 11:48:30 CET 2013


* Simon Peyton-Jones <simonpj at microsoft.com> [2013-02-23 10:27:46+0000]
> I believe that the driving goal is:
> 
> *        to allow changes to internals without forcing a version-bump
> on 'base', on which every package depends

This is a good goal.

Another goal could be to make the packages more meaningful.

I think this goal is good by itself (judging from common engineering
principles), and also would make it easier to share the code between
different implementations. (Right now JHC has its own version of many
base modules, because it cannot reuse base.)

What is common between the following modules?

  Control.Applicative
  Control.Concurrent
  Data.Foldable
  Data.STRef
  Foreign.C
  GHC.Exts
  System.Environment
  Text.ParserCombinators.ReadP

If we ignore for a second historical incidents and tricky
inter-dependencies, I think we'd all agree that by today's standard
they all logically belong to different packages. In other words, if
they didn't exist today, and a package came out that contained two or
more of the above modules, it would look really strange.

Roman



More information about the Glasgow-haskell-users mailing list