University of Minnesota
Software Engineering Center

You are here

Attribute Grammar-based Language Extensions for Java

Date of Publication: 
July 2007
Associated Research Groups: 
Publication Files: 
This paper describes the Java Language Extender framework, a tool that allows one to create new domain-adapted languages by importing domain-specific language extensions into an extensible implementation of Java 1.4. Language extensions may define the syntax, semantic analysis, and optimizations of new language constructs. Java and the language extensions are specified as higher-order attribute grammars. We describe several language extensions and their implementation in the framework. For example, one embeds the SQL database query language into Java and statically checks for syntax and type errors in SQL queries.The tool supports the modular specification of composable language extensions so that programmers can import into Java the unique set of extensions that they desire. When extensions follow certain restrictions, they can be composed without requiring any implementation-level knowledge of the language extensions. The tools automatically compose the selected extensions and the Java host language specification.
In Proceedings of European Conference on Object Oriented Programming (ECOOP)
@inproceedings{vanwyk07ecoop, author = "Van Wyk, Eric and Krishnan, Lijesh and Schwerdfeger, August and Bodin, Derek", title = "Attribute Grammar-based Language Extensions for Java", booktitle = "European Conference on Object Oriented Programming (ECOOP)", series = "Lecture Notes in Computer Science", publisher = "Springer Verlag", month = "July", year = 2007, volume = 4609 }