We formally define and implement a formal system support
ing separate compilation for a small but significant Javalike language.
This system is formally proved to be stronger than the standard compi
lation of both Java and C#, in the sense that it better supports software
reuse by avoiding unnecessary recompilation steps after code modifica
tion which are usually performed by using the standard compilers.
This is achieved by introducing the notion of local type assumption al
lowing the user to specify weaker requirements on the source fragments
which need to be compiled in isolation....
The system has been fully implemented by an available prototype, which
takes a type environment and a set of class declarations as input and
produces standard Java bytecode for those classes.
Posted to Software-Eng by Ehud Lamm on 12/22/02; 5:24:06 AM