Date Added: Mar 2010
The Java Modeling Language (JML) is a formal interface specification language to document the behavior of Java program modules and has been used in many research and industrial projects. However, its inability to support Java 5 features such as generics is reducing its user base significantly. Besides, the JML compiler is on average 8.5 times slower than the javac Java compiler. In this paper, the authors present a new JML compiler built on the Eclipse Java compiler to support Java 5 features. They used a technique called AST merging to implement coarse-grained incremental compilation. In their experiments they observed a significant improvement in compilation speed; the new compiler is 3 to 4.5 times faster than the current one.