Java divergence

So here is the long promised paper on the Java case study for grammar convergence.

Getting all these huge Java grammars to converge was not easy. We are still learning how to do this properly. We are still working on our transformation language, but we feel the results are good enough to go public now. The magic thing about grammar convergence is that it pushes you to necessarily find all the details of grammar variation. Arguably, grammar convergence should be more automatic. However, by asking you to make the transformation decisions, it helps you to understand the result.

From now on, suites of related grammars should have no excuse to be flawed and close-lipped as far as their relationships go.

 

Regards,

Ralf

 

PS: Now that I repaired the link I can as well put the abstract here.

 

Java is Not Syntax-safe -- Apparently

  • Authors
    Ralf Lämmel and Vadim Zaytsev

     

  • Abstract

    Using a mechanized process, we have reverse-engineered the
    relationships between the 6 different grammars that are contained in
    3 versions of the Java Language Specification (JLS). To this end, we
    have extracted the grammars from (the HTML representation of) the
    JLS, and we have systematically resolved or captured all accidental
    or intended differences by grammar transformations. The project
    reveals a considerable number of problems with the grammars such as
    productions that did not define the intended language.