cvs commit: hugs98/libraries Prelude.hs
Ross Paterson
ross@soi.city.ac.uk
Sun, 8 Sep 2002 15:08:38 +0100
On Sun, Sep 08, 2002 at 05:50:26AM -0700, Sigbjorn Finne wrote:
>
> "Ross Paterson" <ross@soi.city.ac.uk> writes:
> >
> ...
> >
> > Having multiple modules under the Prelude makes it possible to share
> > more with the hierarchical libraries. I was using the Prelude out of
> > fptools/libraries/base, so at startup Hugs loads
> >
> > {Hugs}/libraries/Hugs/Base.hs
> ...dozen modules deleted..
> > {Hugs}/libraries/Prelude.hs
> >
> > That also makes it possible to cut about 100 lines from Hugs.Base, and
> > remove some #ifndef __HUGS__ stuff from fptools/libraries.
>
> ..forcing all users to pay for this very slight internal improvement by way
> of increased startup times each time Hugs is loaded. Didn't/doesn't look
> like a Win to me.
Yes, It is slower. Some times for hugs </dev/null on a P120:
PrelImpl+Prelude: 1.01user 0.09system
base/Prelude.hs: 1.32user 0.13system
Of course then loading Maybe, List, Monad or IO is free. If the import
of Data.List is dropped from Prelude (for Hugs) the extra cost is halved.