Loading…

Linking Syntactic and Semantic Models of Java Source Code within a Program Transformation System

Static analysis and software manipulation tools are frequently rule-based and draw on a variety of software models in order to achieve their goals. Program transformation languages provide traversal and matching capabilities that are aligned with the core functionality of rule-based systems. Therefo...

Full description

Saved in:
Bibliographic Details
Main Authors: Winter, V. L., Guerrero, J., James, A., Reinke, C.
Format: Conference Proceeding
Language:English
Subjects:
Online Access:Request full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Static analysis and software manipulation tools are frequently rule-based and draw on a variety of software models in order to achieve their goals. Program transformation languages provide traversal and matching capabilities that are aligned with the core functionality of rule-based systems. Therefore, transformation systems should be considered as candidates for implementing static analysis and manipulation tools. An issue associated with this approach is that transformation systems predominantly operate on syntactic models (abstract/concrete trees) of software. To effectively support in-depth analysis, it is beneficial to integrate the syntactic models used by transformation systems with one or more semantic models. This paper describes a system, called GPS-Traverse, that establishes a link between syntactic and semantic models of Java software. These models are central to a transformation-based Java source code analysis and manipulation system we are developing called Sextant. Within Sextant, GPS-traverse provides a coordinate system that is accessible during transformation. These coordinates enable the semantic model to be queried in a context-sensitive fashion during the course of transformation.
ISSN:1530-2059
2640-7507
DOI:10.1109/HASE.2012.8