A formal introduction to the compilation of Java Article in Software Practice and Experience (March 1998)