A Compilation Manager for SML/NJ
Authors: Robert Harper, Peter Lee, F. Pfenning, Gene Rollins
Appeared in Proc. ACM Workshop Standard ML, June 1994
Sorry, no postscript available at this time.
The design and implementation of a compilation manager for Standard ML of New
Jersey (SML/NJ) is described. Truly independent compilation is difficult to
implement correctly and efficiently for SML because one compilation unit may
depend not only on the interface of another, but also on its
implementation. In this paper we present an integrated compilation system
based on the visible compiler primitives provided by SML/NJ that supports
selective recompilation to minimize system build time in most
situations. Large systems are presented as hierarchical source groups. An
automatic dependency analyzer determines constraints on the order in which
sources must be considered. By abstracting away from the specifics of the
SML/NJ compiler, the compilation manager readily generalizes to arbitrary
compilation tools such as parser generators and embedded languages.