Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

Declarative intraprocedural flow analysis of Java source code

Söderberg, Emma LU orcid ; Ekman, Torbjörn LU ; Hedin, Görel LU orcid and Magnusson, Eva LU (2008) LDTA'08: 8th Workshop on Language Description, Tools and Applications p.155-171
Abstract
We have implemented intraprocedural control-flow and data-flow analysis of Java source code in a

declarative manner, using reference attribute grammars augmented with circular attributes

and collection attributes. Our implementation is built on top of the JastAdd

Extensible Java Compiler and we have run the analyses on medium-sized Java programs.

We show how the analyses can be built using small concise composable modules, and

how they provide extensible frameworks for further source code analyses. Preliminary

measurements indicate that there is little difference in execution time between our

declarative data-flow analysis and an imperative implementation.
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
host publication
Electronic Notes in Theoretical Computer Science 238 (2009)
pages
155 - 171
publisher
Elsevier
conference name
LDTA'08: 8th Workshop on Language Description, Tools and Applications
conference location
Budapest, Hungary
conference dates
2008-04-05
external identifiers
  • scopus:70349386126
ISSN
1571-0661
DOI
10.1016/j.entcs.2009.09.046
project
Embedded Applications Software Engineering
language
English
LU publication?
yes
id
cf1689e2-95ec-402d-b08f-615a14715daa (old id 1267173)
date added to LUP
2016-04-01 14:50:13
date last changed
2022-03-29 23:09:05
@inproceedings{cf1689e2-95ec-402d-b08f-615a14715daa,
  abstract     = {{We have implemented intraprocedural control-flow and data-flow analysis of Java source code in a <br/><br>
declarative manner, using reference attribute grammars augmented with circular attributes <br/><br>
and collection attributes. Our implementation is built on top of the JastAdd <br/><br>
Extensible Java Compiler and we have run the analyses on medium-sized Java programs. <br/><br>
We show how the analyses can be built using small concise composable modules, and <br/><br>
how they provide extensible frameworks for further source code analyses. Preliminary <br/><br>
measurements indicate that there is little difference in execution time between our <br/><br>
declarative data-flow analysis and an imperative implementation.}},
  author       = {{Söderberg, Emma and Ekman, Torbjörn and Hedin, Görel and Magnusson, Eva}},
  booktitle    = {{Electronic Notes in Theoretical Computer Science 238 (2009)}},
  issn         = {{1571-0661}},
  language     = {{eng}},
  pages        = {{155--171}},
  publisher    = {{Elsevier}},
  title        = {{Declarative intraprocedural flow analysis of Java source code}},
  url          = {{http://dx.doi.org/10.1016/j.entcs.2009.09.046}},
  doi          = {{10.1016/j.entcs.2009.09.046}},
  year         = {{2008}},
}