ACM Home Page
Please provide us with feedback. Feedback
Hierarchical modularity
Full text PdfPdf (409 KB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 21 ,  Issue 4  (July 1999) table of contents
Pages: 813 - 847  
Year of Publication: 1999
ISSN:0164-0925
Authors
Matthias Blume  Princeton Univ., Princeton, NJ
Andrew W. Appel  Princeton Univ., Princeton, NJ
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 65,   Citation Count: 8
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/325478.325518
What is a DOI?

ABSTRACT

To cope with the complexity of very large systems, it is not sufficient to divide them into simple pieces because the pieces themselves will either be too numerous or too large. A hierarchical modular structure is the natural solution. In this article we explain how that approach can be applied to software. Our compilation manager provides a language for specifying where individual modules fit into a hierarchy and how they are related semantically. We pay particular attention to the structure of the global name space of program identifiers that are used for module linkage because any potential for name clashes between otherwise unrelated parts of a program can negatively affect modularity. We discuss the theoretical issues in building software hierarchically, and we describe our implementation of CM, the compilation manager for Standard ML of New Jersey.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Adams, P. and Solomon, M. 1993. An overview of the CAPITL software development environment. Tech. Rep. CS-TR-93-1143, Computer Sciences Department, University of Wisconsin - Madison. 4.
2
 
3
 
4
Appel, A. W. and MacQueen, D. B. 1991. Standard ML of New Jersey. In 3rd International Symp. on Prog. Lang. Implementation and Logic Programming, M. Wirsing, Ed. Springer- Verlag, New York, 1-13.
5
 
6
 
7
Barendregt, H. P. 1981. The Lambda Calculus: Its Syntax and Semantics. North-Holland, Amsterdam.
 
8
Bauer, L., Appel, A. W., andFelten, E. W.1999. Mechanisms for secure modular programming in Java. Tech. Rep. TR-603-99, Department of Computer Science, Princeton University. July.
 
9
Blume, M. 1995. Standard ML of New Jersey compilation manager. Manual accompanying SML/NJ software.
10
 
11
Broder, A. 1993. Some applications of Rabin's ~ngerprinting method. In Sequences II: Methods in Communications, Security, and Computer Science, R. Capocelli, A. D. Santis, and U. Vaccaro, Eds. Springer-Verlag, 143-152.
 
12
Brown, M. R. and Ellis, J. R. 1993. Bridges: Tools to extend the Vesta conguration management system. Tech. Rep. 108, Digital Equipment Corp. Systems Research Center. 6.
13
 
14
Cardelli, L., Donahue, J., Glassman, L., Jordan, M., Kalsow, B., and Nelson, G. 1988. Modula-3 report. Tech. Rep. Research Report 31, DEC Systems Research Center, Palo Alto, CA.
 
15
Chiu, S.-Y. and Levin, R. 1993. The Vesta repository: A le system extension for software development. Tech. Rep. 106, Digital Equipment Corp. Systems Research Center. June.
 
16
 
17
Clemm, G. M. 1994. The Odin System | Reference Manual.
 
18
DoD 1980. Military standard: Ada programming language. Tech. Rep. MIL-STD-1815, Department of Defense, Naval Publications and Forms Center, Philadelphia, PA.
 
19
 
20
 
21
Feldman, S. I. 1979. Make - a program for maintaining computer programs. In Unix Programmer's Manual, Seventh Edition, Volume 2A. Bell Laboratories.
22
23
 
24
Hanna, C. B. and Levin, R. 1993. The Vesta language for conguration management. Tech. Rep. 107, Digital Equipment Corp. Systems Research Center. June.
 
25
Harper, R., Lee, P., Pfenning, F., and Rollins, E. 1994b. A Compilation Manager for Standard ML of New Jersey. In 1994 ACM SIGPLAN Workshop on ML and its Applications. 136-147.
 
26
27
 
28
29
30
 
31
Levin, R. and McJones, P. R. 1993. The Vesta approach to precise conguration of large software systems. Tech. Rep. 105, Digital Equipment Corp. Systems Research Center. June.
 
32
 
33
 
34
Mitchell, J. G., Maybury, W., and Sweet, R. 1979. Mesa language manual. Tech. Rep. CSL-79-3, Xerox PARC.
35
 
36
37



REVIEW

"Michael G. Murphy : Reviewer"

A hierarchical modular structure is usually viewed as the natural solution for handling the complexity of very large systems. In this paper, the authors provide a strategy for applying this approach to software. This work makes a significant c  more...

Collaborative Colleagues:
Matthias Blume: colleagues
Andrew W. Appel: colleagues