Meny

Javascript verkar inte påslaget? - Vissa delar av Lunds universitets webbplats fungerar inte optimalt utan javascript, kontrollera din webbläsares inställningar.
Du är här

JastAdd - a Java-based system for implementing front ends

Författare:
Publiceringsår: 2001
Språk: Engelska
Sidor: 59-78
Publikation/Tidskrift/Serie: Electronic Notes in Theoretical Computer Science
Volym: 44
Nummer: 2
Dokumenttyp: Konferensbidrag
Förlag: Elsevier Science B.V.

Sammanfattning

We describe JastAdd, a Java-based system for specifying and implementing the parts of compiler front ends that follow parsing. The system is built on top of a traditional Java parser generator which is used for parsing and tree building. JastAdd adds facilities for specifying and generating object-oriented abstract syntax trees with both declarative behavior (using Reference Attributed Grammars (RAGs)) and imperative behavior (using ordinary Java code). The behavior can be modularized into different aspects, e.g. name analysis, type checking, code generation, etc., that are woven together into classes. The class weaving technique has many advantages over the often used Visitor pattern in that it provides a safe and much simpler interface for many applications and in that it supports modularization of not only methods, but also data. Class weaving is also easy and useful to combine with Visitor techniques in order to achieve the best of both. We also describe the implementation of the RAG evaluator (optimal recursive evaluation) which is implemented very conveniently using Java classes, interfaces, and virtual methods.

Disputation

Nyckelord

  • Technology and Engineering

Övriga

Published
Yes
  • LUCAS

Box 117, 221 00 LUND
Telefon 046-222 00 00 (växel)
Telefax 046-222 47 20
lu [at] lu [dot] se

Fakturaadress: Box 188, 221 00 LUND
Organisationsnummer: 202100-3211
Om webbplatsen