wren ng thornton <[email protected]> writes:

[...]

> But again, this depends on how feasible it would be to actually split
> the packages apart. Is it feasible?

Some time last year, I tried to extract the module import
inter-dependencies in the base package (with the help of GHC's
-ddump-minimal-imports), and came up with the following relations:

Attachment: all-deps.lst
Description: Binary data

The main problem I see are the cyclic dependencies between groups of
modules; e.g. consider the import-deps between the Prelude module and
the GHC.* modules:

GHC.ConsoleHandler : Prelude
GHC.Constants : Prelude
GHC.Environment : Prelude
GHC.Event : Prelude
GHC.Exts : Prelude
GHC.Handle : Prelude
GHC.IOBase : Prelude
GHC.PArr : Prelude
GHC.Stack : Prelude
GHC.Stats : Prelude
Prelude : GHC.Base
Prelude : GHC.Enum
Prelude : GHC.Err
Prelude : GHC.Float
Prelude : GHC.Num
Prelude : GHC.Real
Prelude : GHC.Show

Moreover, the GHC.* modules often also import other standard-library
modules such as Data.* for the types and helpers. Also, cyclic
dependencies between CABAL packages aren't supported afaik... 


cheers,
  hvr
_______________________________________________
Glasgow-haskell-users mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to