DocumentCode
1890420
Title
Extending Attribute Grammars with Collection Attributes--Evaluation and Applications
Author
Magnusson, Eva ; Ekman, Torbjörn ; Hedin, Gorel
Author_Institution
Lund Univ., Lund
fYear
2007
fDate
Sept. 30 2007-Oct. 1 2007
Firstpage
69
Lastpage
80
Abstract
Collection attributes, as defined by Boyland, can be used as a mechanism for concisely specifying cross-reference like properties such as callee sets, subclass sets, and sets of variable uses. We have implemented collection attributes in our declarative meta programming system JastAdd, and used them for a variety of applications including devitalization analysis, metrics, and flow analysis. We propose a series of evaluation algorithms for collection attributes, and compare their performance and applicability. The key design criteria for our algorithms are 1) that they work well with demand evaluation, i.e., defined properties are computed only if they are actually needed for a particular source code analysis problem and a particular source program, and 2) that they work in the presence of circular (fixed-point) definitions that are common for many source code analysis problems, e.g., flow analysis. We show that the best algorithms work well on large practical problems, including the analysis of large Java programs.
Keywords
attribute grammars; systems analysis; JastAdd; attribute grammars; collection attributes; declarative meta programming system; devitalization analysis; flow analysis; metrics; Algorithm design and analysis; Application software; Computer languages; Computer science; Java; Laboratories; Mechanical factors; Program processors; Silver;
fLanguage
English
Publisher
ieee
Conference_Titel
Source Code Analysis and Manipulation, 2007. SCAM 2007. Seventh IEEE International Working Conference on
Conference_Location
Paris
Print_ISBN
978-0-7695-2880-9
Type
conf
DOI
10.1109/SCAM.2007.13
Filename
4362899
Link To Document