Webbläsaren som du använder stöds inte av denna webbplats. Alla versioner av Internet Explorer stöds inte längre, av oss eller Microsoft (läs mer här: * https://www.microsoft.com/en-us/microsoft-365/windows/end-of-ie-support).

Var god och använd en modern webbläsare för att ta del av denna webbplats, som t.ex. nyaste versioner av Edge, Chrome, Firefox eller Safari osv.

Rewritable Reference Attributed Grammars

Författare

Summary, in English

This paper presents an object-oriented technique for rewriting abstract syntax trees in order to simplify compilation. The technique, Rewritable Reference Attributed Grammars (ReRAGs), is completely declarative and supports both rewrites and computations by means of attributes. We have implemented ReRAGs in our aspect-oriented compiler compiler tool JastAdd II. Our largest application is a complete static-semantic analyzer for Java 1.4. ReRAGs uses three synergistic mechanisms for supporting separation of concerns: inheritance for model modularization, aspects for cross-cutting concerns, and rewrites that allow computations to be expressed on the most suitable model. This allows compilers to be written in a high-level declarative and modular fashion, supporting language extensibility as well as reuse of modules for different compiler-related tools. We present the ReRAG formalism, its evaluation algorithm, and examples of its use. Initial measurements using a subset of the Java class library as our benchmarks indicate that our generated compiler is only a few times slower than the standard compiler, javac, in J2SE 1.4.2 SDK. This shows that ReRAGs are already useful for large-scale practical applications, despite that optimization has not been our primary concern so far.

Publiceringsår

2004

Språk

Engelska

Sidor

144-169

Publikation/Tidskrift/Serie

ECOOP 2004 – Object-Oriented Programming. Proceedings (Lecture Notes in Computer Science)

Volym

3086

Dokumenttyp

Konferensbidrag

Förlag

Springer

Ämne

  • Computer Science

Conference name

ECOOP 2004 – Object-Oriented Programming. 18th European Conference

Conference date

2004-06-14 - 2004-06-18

Conference place

Oslo, Norway

Status

Published

Forskningsgrupp

  • LUCAS

ISBN/ISSN/Övrigt

  • ISSN: 1611-3349
  • ISSN: 0302-9743
  • ISBN: 978-3-540-22159-3