logo

Licentiate seminar: Wedensday, June 4th.:

Applications and Extensions of Reference Attributed Grammars

Eva Magnusson presents her licentiate thesis:"Applications and Extensions of Reference Attributed Grammars"

Opponent: Professor Uwe Assmann, University of Linköping

Date: June 4th, at 13.15

Place: Lund Institute of Technology, Ole Römers väg 3, The E-house, Room E:1406

Download thesis (PDF)

Abstract: This thesis deals with techniques for raising the programming level for a particular kind of computations, namely those on abstract syntax trees. Such computations are central in tools that manipulate programs, e.g., compilers, smart language-sensitive editors, software metric tools, etc. Our work is based on Reference Attributed Grammars (RAGs) which combines object-oriented features with declarative programming to specify computations on abstract syntax trees. RAGs have proven useful, e.g., for performing static-semantic analysis of object-oriented languages. We investigate new applications of RAGs, extensions of RAGs in order to cover yet more applications, modularization issues for RAGs, and implementation of RAG evaluators.

The thesis consists of an introduction and three papers. The first paper deals with the application of RAGs to a new problem area: program visualization. The second paper describes JastAdd, a practical system for RAGs, based on aspect-oriented programming and which supports the combination of imperative Java programming with declarative RAG programming. JastAdd has been used for developing practical compilers for full-scale languages. The third paper describes CRAGs, an extension of RAGs allowing circular dependencies and where the evaluator computes fixed-point solutions by iteration. CRAGs open up RAGs for new application areas such as grammar and data flow analyses. The techniques have all been implemented and tested in practice.

 

© Center for Applied Software Research 2001-2007. Jonas.Wisbrant@cs.lth.se

Last update: