Utility-Based Planning
Abstract
The design and implementation of an incremental recompilation manager (IRM) for Standard ML of New Jersey (SML/NJ) is described. Truly separate 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 'smart 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 IRM readily generalizes to arbitrary 'compilation tools' such as parser generators and embedded languages.
Document Details
- Document Type
- Technical Report
- Publication Date
- Nov 01, 1993
- Accession Number
- ADA276521
Entities
People
- Reid G. Simmons
- Sven Koenig
Organizations
- Carnegie Mellon University