Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

Extending Attribute Grammars with Collection Attributes - Evaluation and Applications

Magnusson, Eva LU ; Ekman, Torbjörn LU and Hedin, Görel LU orcid (2007) SCAM 2007 - Seventh IEEE International Working Conference on Source Code Analysis And Manipulation p.69-78
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 devirtualization 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... (More)
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 devirtualization 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. (Less)
Please use this url to cite or link to this publication:
author
; and
organization
publishing date
type
Chapter in Book/Report/Conference proceeding
publication status
published
subject
keywords
source code analysis, Attribute grammars, metrics, collection attributes
host publication
Seventh IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2007.
pages
10 pages
publisher
IEEE - Institute of Electrical and Electronics Engineers Inc.
conference name
SCAM 2007 - Seventh IEEE International Working Conference on Source Code Analysis And Manipulation
conference location
Paris, France
conference dates
2007-09-30 - 2007-10-01
external identifiers
  • wos:000251240100007
  • scopus:47749088929
ISBN
0-7695-2880-5
DOI
10.1109/SCAM.2007.4362899
language
English
LU publication?
yes
id
d4da1052-b40e-4792-ad3e-a8d549093b4c (old id 634097)
date added to LUP
2016-04-04 10:12:23
date last changed
2022-02-13 19:24:18
@inproceedings{d4da1052-b40e-4792-ad3e-a8d549093b4c,
  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.<br/><br>
We have implemented collection attributes in our declarative meta programming system JastAdd, and used them for a variety of applications including devirtualization 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.}},
  author       = {{Magnusson, Eva and Ekman, Torbjörn and Hedin, Görel}},
  booktitle    = {{Seventh IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2007.}},
  isbn         = {{0-7695-2880-5}},
  keywords     = {{source code analysis; Attribute grammars; metrics; collection attributes}},
  language     = {{eng}},
  pages        = {{69--78}},
  publisher    = {{IEEE - Institute of Electrical and Electronics Engineers Inc.}},
  title        = {{Extending Attribute Grammars with Collection Attributes - Evaluation and Applications}},
  url          = {{https://lup.lub.lu.se/search/files/5487169/634118.pdf}},
  doi          = {{10.1109/SCAM.2007.4362899}},
  year         = {{2007}},
}