Changes between Version 5 and Version 6 of ModuleDependencies


Ignore:
Timestamp:
May 17, 2006 3:07:54 PM (8 years ago)
Author:
guest
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ModuleDependencies

    v5 v6  
    1 The Marvellous Module Structure of GHC (possibly outdated, please fix anything that is wrong) 
     1=The Marvellous Module Structure of GHC= (possibly outdated, please fix anything that is wrong) 
    22 
    33GHC is built out of about 245 Haskell modules. It can be quite tricky to figure out what the module dependency graph looks like. It can be important, too, because loops in the module dependency graph need to be broken carefully using .hi-boot interface files. 
     
    1010 * Loops are documented by a dependency such as "loop Type.Type". This means tha the module imports Type.Type, but module Type has not yet been compiled, so the import comes from Type.hi-boot.  
    1111 
    12 Compilation order is as follows: 
     12==Compilation order is as follows:== 
    1313 
    1414 * First comes a layer of modules that have few interdependencies, and which implement very basic data types: 
     
    5151   * CoreTidy (HscTypes.PersistentCompilerState)  
    5252 
    53 _HsSyn stuff_ 
     53==HsSyn stuff== 
    5454 * HsPat.hs-boot 
    5555 * HsExpr.hs-boot (loop HsPat.LPat) 
     
    5959 * HsExpr (HsDecls, HsPat)  
    6060 
    61 _Library stuff: base package_ 
     61==Library stuff: base package== 
    6262 * GHC.Base 
    6363 * Data.Tuple (GHC.Base), GHC.Ptr (GHC.Base)