Hierarchical Modularity: Compilation Management for Standard ML
|Authors:||Blume, Matthias, Appel, Andrew W.|
Many programming languages identify modular units with compilation units, while only few extend this to permit hierarchies of language-level modules within individual compilation units. But when the number of such compilation units is large, then it becomes increasingly important that they themselves can be grouped together and that explicit export interfaces can be used to control namespaces. We explain how the group model implemented in SML/NJ's compilation manager CM provides the necessary facilities to avoid unwanted interferences between unrelated parts of large programs. We also discuss the problem of automatic dependency analysis as well as its complexity and show ways of avoiding intractability.