Hi Bulat,

Just a partial answer for now:

On Wed, Sep 13, 2006 at 12:29:58PM +0400, Bulat Ziganshin wrote:
> 
> Friday, September 8, 2006, 5:52:57 AM, you wrote:
> 
> what is a 'base' library now? it is the library that implements common set
> of operations for latest versions of ghc, hugs and nhc. it contains
> low-level implementation for ghc, but relies on separate hugsbase
> package for hugs (the same for nhc, afaiu). so, first step is obvious
> - separate ghc-base library from the rest. hugsbase, ghc-base and
> nhc-base packages should provide common set of low-level operations,

As it happens I was working on getting GHC to use cabal to build base
et al on the plane the other day, and I had a brief look at this.
Unfortunately there is a tangled web of dependencies, e.g. you need the
low level Int# stuff in ghc-base, then Int in base, but then any other
GHC-specific stuff can't use Int because it's in base. We could put
everything into ghc-base and just re-export the common stuff in base,
but then we can't share any code between ghc, hugs etc. I haven't looked
in detail to see just how bad the problem is, but I agree it would be
really good if we could split things up somehow so that base (or
whatever base gets split into) is the same everywhere.


Thanks
Ian

_______________________________________________
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to