Personal tools
You are here: Home Members Torbjörn Ekman publications The JastAdd Extensible Java Compiler
Document Actions

The JastAdd Extensible Java Compiler

In: 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2007, Montreal, October 2007.

Authors: Torbjörn Ekman, Görel Hedin

Abstract

The JastAdd Extensible Java Compiler is a high quality Java compiler that is easy to extend in order to build static analysis tools for Java, and to extend Java with new language constructs. It is built modularly, with a Java 1.4 compiler that is extended to a Java 5 compiler. Example applications that are built as extensions include an extension of Java with AspectJ constructs, an alternative backend that generates Jimple, and the implementation of a pluggable type system for non-null checking and inference.

The system is implemented using JastAdd, a declarative Java-like language. We describe the compiler architecture, the major design ideas for building and extending the compiler, in particular, for dealing with complex extensions that affect name and type analysis. Our extensible compiler compares very favorably concerning quality, speed and size with other extensible Java compiler frameworks. It also compares favorably in quality and size compared with traditional non-extensible Java compilers, and it runs within a factor of three compared to javac.

(PDF)

BIBTEX:

@inproceedings{jastaddj,
    author = "Torbj{\"{o}}rn Ekman and G{\"{o}}rel Hedin",
    title = "The {JastAdd} Extensible {Java} Compiler",
    booktitle = "{Object-Oriented Programming, Systems and Languages (OOPSLA)}",
    pages = "1--18",
    year = "2007"
}

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: