Modular name analysis for Java using JastAdd

31Citations
Citations of this article
7Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Name analysis for Java is challenging with its complex visibility rules involving nested scopes, inheritance, qualified access, and syntactic ambiguities. We show how Java name analysis including ambiguities related to names of variables, fields, and packages, can be implemented in a declarative and modular manner using the JastAdd compiler construction system. Declarative attributes and context-dependent rewrites enable the implementation to be modularized in the same way as the informal Java language specification. The individual rules in the specification transfer directly to equations in the implementation. Rewrites are used to define new concepts in terms of existing concepts in an iterative manner in the same way as the informal language specification. This enables equations to use both context-free and context-dependent concepts and leads to improved separation of concerns. A full Java 1.4 compiler has been implemented to validate the technique. © Springer-Verlag Berlin Heidelberg 2006.

Cite

CITATION STYLE

APA

Ekman, T., & Hedin, G. (2006). Modular name analysis for Java using JastAdd. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4143 LNCS, pp. 422–436). Springer Verlag. https://doi.org/10.1007/11877028_18

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free