paper on Java Binary Compatibility

A paper discussing the concept an correctness of binary compatibility
in Java is available from:

We are looking forward to any feedback.


David Wragg, Sophia Drossopoulou, Susan Eisenbach.
--------------------------------------------------------- cut here

             Java Binary Compatibility is Almost Correct

             David Wragg, Sophia Drossopoulou and Susan Eisenbach 
             February 1998 

The Java language description is unusual in that it defines
the effect of interleaving separate compilation and source code
modifications. In Java, certain source code modifications,
such as adding a method to a class, are defined as binary
compatible. The Java language  description does not require the
re-compilation of programs importing classes or interfaces which
were modified in binary compatible ways,  and it claims that
successful linking and execution of the altered  program
is guaranteed.

In this paper we show that Java binary compatibility does not
actually guarantee successful linking and execution. We then
suggest a framework in which we formalize the requirement
of safe linking and execution without re-compilation and
we propose a more modest definition of binary compatibility.

We prove for a substantial subset of Java, that our definition
guarantees safe linking and execution. 
Dr. Sophia Drossopoulou				tel: +44 171 594 8368
Department of Computing 			fax: +44 171 581 8024
Imperial College of Science, Technology and Medicine
LONDON SW7 2BZ, England				email: sd@doc.ic.ac.uk