RCS—a system for version control
Software—Practice & Experience
Software development control based on module interconnection
ICSE '79 Proceedings of the 4th international conference on Software engineering
The impact of mesa on system design
ICSE '79 Proceedings of the 4th international conference on Software engineering
Computer-Aided Software Engineering in a distributed workstation environment
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
The impact of interprocedural analysis and optimization in the Rn programming environment
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interprocedural optimization: eliminating unnecessary recompilation
SIGPLAN '86 Proceedings of the 1986 SIGPLAN symposium on Compiler construction
Efficient recompilation of module interfaces in a software development environment
SDE 2 Proceedings of the second ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
Rigi-A system for programming-in-the-large
ICSE '88 Proceedings of the 10th international conference on Software engineering
Minimizing ripple recompilation in a persistent software environment
CSC '90 Proceedings of the 1990 ACM annual conference on Cooperation
An object-oriented model of software configuration management
SCM '91 Proceedings of the 3rd international workshop on Software configuration management
Compositional analysis of modular logic programs
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Interprocedural optimization: eliminating unnecessary recompilation
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
A framework for selective recompilation in the presence of complex intermodule dependencies
Proceedings of the 17th international conference on Software engineering
Interface control and incremental development in the PIC environment
ICSE '85 Proceedings of the 8th international conference on Software engineering
SLIPE '85 Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments
TRICK: tracking and reusing compiler's knowledge
ACM SIGPLAN Notices
The evolution of the GANDALF system
Journal of Systems and Software
Hi-index | 0.00 |
With current compiler technology, changing a single line in a large software system may trigger massive recompilations. If the change occurs in a file with shared definitions, all compilation units depending upon that file must be recompiled to assure consistency. However, many of those recompilations may be redundant, because the change may actually affect only a small fraction of the overall system.This paper presents an efficient method for significantly reducing the set of modules that must be recompiled after a change. The method is based on reference sets and the isolation of differences. The cost of determining whether recompilation is necessary is negligible compared to the cost of compilation. The method is easily added to existing compilers, and can be extended to provide guidance to programmers if the change requires software updates.