High-level binding with low-level linkers
Communications of the ACM
A type-checking program linkage system for pascal
ICSE '78 Proceedings of the 3rd international conference on Software engineering
Compiler design for efficient code generation and program optimization
SIGPLAN '79 Proceedings of the 1979 SIGPLAN symposium on Compiler construction
On implementing separate compilation in block-structured languages
SIGPLAN '79 Proceedings of the 1979 SIGPLAN symposium on Compiler construction
Nesting in Ada programs is for the birds
SIGPLAN '80 Proceedings of the ACM-SIGPLAN symposium on Ada programming language
Consistency checking within embedded design languages
ICSE '82 Proceedings of the 6th international conference on Software engineering
Hi-index | 0.00 |
This paper describes the design of a compiling system that supports the efficient compilation of very large programs. The system consists of front ends for different languages, a common program database to store the intermediate code, and various back ends, optimizers, debuggers and other development tools. The compiling system achieves efficiency of use by minimizing the number of system components that must be invoked when a small change is made in a program. A new separate compilation strategy is presented that is both easy and natural to use and does not require language extensions for its use. The database provides the necessary contextual information to support separate compilation and to facilitate complete compile-time checking. Also, the use of this database affords a unique opportunity to reduce substantially the cost of recompilation and to support an efficient source patching facility.