Changes between Version 4 and Version 5 of ModuleDependencies


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

--

Legend:

Unmodified
Added
Removed
Modified
  • ModuleDependencies

    v4 v5  
    2323 
    2424 * Now comes the main subtle layer, involving types, classes, type constructors identifiers, expressions, rules, and their operations. 
    25    * Name 
    26      PrimRep 
     25   * Name, PrimRep 
     26   * PrelNames 
     27   * Var (Name, loop IdInfo.IdInfo, loop Type.Type, loop Type.Kind) 
     28   * VarEnv, VarSet, ThinAir 
     29   * Class (loop TyCon.TyCon, loop Type.Type) 
     30   * TyCon (loop Type.Type, loop Type.Kind, loop DataCon.DataCon, loop Generics.GenInfo) 
     31   * TypeRep (loop DataCon.DataCon, loop Subst.substTyWith) 
     32   * Type (loop PprType.pprType, loop Subst.substTyWith) 
     33   * FieldLabel(Type), TysPrim(Type) 
     34   * Literal (TysPrim, PprType), DataCon (loop PprType, loop Subst.substTyWith, FieldLabel.FieldLabel) 
     35   * TysWiredIn (loop MkId.mkDataConIds) 
     36   * TcType( lots of TysWiredIn stuff) 
     37   * PprType( lots of TcType stuff ) 
     38   * PrimOp (PprType, TysWiredIn) 
     39   * CoreSyn [does not import Id] 
     40   * IdInfo (CoreSyn.Unfolding, CoreSyn.CoreRules) 
     41   * Id (lots from IdInfo) 
     42   * CoreFVs, PprCore 
     43   * CoreUtils (PprCore.pprCoreExpr, CoreFVs.exprFreeVars, CoreSyn.isEvaldUnfolding CoreSyn.maybeUnfoldingTemplate) 
     44   * CoreLint( CoreUtils ), OccurAnal (CoreUtils.exprIsTrivial), CoreTidy (CoreUtils.exprArity ) 
     45   * CoreUnfold (OccurAnal.occurAnalyseGlobalExpr) 
     46   * Subst (CoreUnfold.Unfolding, CoreFVs), Generics (CoreUnfold.mkTopUnfolding), Rules (CoreUnfold.Unfolding, PprCore.pprTidyIdRules) 
     47   * MkId (CoreUnfold.mkUnfolding, Subst, Rules.addRule) 
     48   * PrelInfo (MkId), HscTypes( Rules.RuleBase )  
    2749 
    28    * PrelNames 
    29      Var (Name, loop IdInfo.IdInfo, loop Type.Type, loop Type.Kind) 
     50 * That is the end of the infrastructure. Now we get the main layer of mdoules that perform useful work. 
     51   * CoreTidy (HscTypes.PersistentCompilerState)  
    3052 
    31           o VarEnv, VarSet, ThinAir 
     53_HsSyn stuff_ 
     54 * HsPat.hs-boot 
     55 * HsExpr.hs-boot (loop HsPat.LPat) 
     56 * HsTypes (loop HsExpr.HsSplice) 
     57 * HsBinds (HsTypes.LHsType, loop HsPat.LPat, HsExpr.pprFunBind and others) HsLit (HsTypes.SyntaxName) 
     58 * HsPat (HsBinds, HsLit) HsDecls (HsBinds) 
     59 * HsExpr (HsDecls, HsPat)  
    3260 
    33           o Class (loop TyCon.TyCon, loop Type.Type) 
    34  
    35           o TyCon (loop Type.Type, loop Type.Kind, loop DataCon.DataCon, loop Generics.GenInfo) 
    36  
    37           o TypeRep (loop DataCon.DataCon, loop Subst.substTyWith) 
    38  
    39           o Type (loop PprType.pprType, loop Subst.substTyWith) 
    40  
    41           o FieldLabel(Type) 
    42             TysPrim(Type) 
    43  
    44           o Literal (TysPrim, PprType) 
    45             DataCon (loop PprType, loop Subst.substTyWith, FieldLabel.FieldLabel) 
    46  
    47           o TysWiredIn (loop MkId.mkDataConIds) 
    48  
    49           o TcType( lots of TysWiredIn stuff) 
    50  
    51           o PprType( lots of TcType stuff ) 
    52  
    53           o PrimOp (PprType, TysWiredIn) 
    54  
    55           o CoreSyn [does not import Id] 
    56  
    57           o IdInfo (CoreSyn.Unfolding, CoreSyn.CoreRules) 
    58  
    59           o Id (lots from IdInfo) 
    60  
    61           o CoreFVs 
    62             PprCore 
    63  
    64           o CoreUtils (PprCore.pprCoreExpr, CoreFVs.exprFreeVars, CoreSyn.isEvaldUnfolding CoreSyn.maybeUnfoldingTemplate) 
    65  
    66           o CoreLint( CoreUtils ) 
    67             OccurAnal (CoreUtils.exprIsTrivial) 
    68             CoreTidy (CoreUtils.exprArity ) 
    69  
    70           o CoreUnfold (OccurAnal.occurAnalyseGlobalExpr) 
    71  
    72           o Subst (CoreUnfold.Unfolding, CoreFVs) 
    73             Generics (CoreUnfold.mkTopUnfolding) 
    74             Rules (CoreUnfold.Unfolding, PprCore.pprTidyIdRules) 
    75  
    76           o MkId (CoreUnfold.mkUnfolding, Subst, Rules.addRule) 
    77  
    78           o PrelInfo (MkId) 
    79             HscTypes( Rules.RuleBase )  
    80  
    81     * That is the end of the infrastructure. Now we get the main layer of mdoules that perform useful work. 
    82  
    83           o CoreTidy (HscTypes.PersistentCompilerState)  
    84  
    85 HsSyn stuff 
    86  
    87     * HsPat.hs-boot 
    88     * HsExpr.hs-boot (loop HsPat.LPat) 
    89     * HsTypes (loop HsExpr.HsSplice) 
    90     * HsBinds (HsTypes.LHsType, loop HsPat.LPat, HsExpr.pprFunBind and others) HsLit (HsTypes.SyntaxName) 
    91     * HsPat (HsBinds, HsLit) HsDecls (HsBinds) 
    92     * HsExpr (HsDecls, HsPat)  
    93  
    94 Library stuff: base package 
    95  
    96     * GHC.Base 
    97     * Data.Tuple (GHC.Base), GHC.Ptr (GHC.Base) 
    98     * GHC.Enum (Data.Tuple) 
    99     * GHC.Show (GHC.Enum) 
    100     * GHC.Num (GHC.Show) 
    101     * GHC.ST (GHC.Num), GHC.Real (GHC.Num) 
    102     * GHC.Arr (GHC.ST) GHC.STRef (GHC.ST) 
    103     * GHC.IOBase (GHC.Arr) 
    104     * Data.Bits (GHC.Real) 
    105     * Data.HashTable (Data.Bits, Control.Monad) 
    106     * Data.Typeable (GHC.IOBase, Data.HashTable) 
    107     * GHC.Weak (Data.Typeable, GHC.IOBase)  
     61_Library stuff: base package_ 
     62 * GHC.Base 
     63 * Data.Tuple (GHC.Base), GHC.Ptr (GHC.Base) 
     64 * GHC.Enum (Data.Tuple) 
     65 * GHC.Show (GHC.Enum) 
     66 * GHC.Num (GHC.Show) 
     67 * GHC.ST (GHC.Num), GHC.Real (GHC.Num) 
     68 * GHC.Arr (GHC.ST) GHC.STRef (GHC.ST) 
     69 * GHC.IOBase (GHC.Arr) 
     70 * Data.Bits (GHC.Real) 
     71 * Data.HashTable (Data.Bits, Control.Monad) 
     72 * Data.Typeable (GHC.IOBase, Data.HashTable) 
     73 * GHC.Weak (Data.Typeable, GHC.IOBase)