Lecture Notes in Computer Science
DOI: 10.1007/978-3-540-71229-9_15
|View full text |Cite
|
Sign up to set email alerts
|

A Declarative Framework for Analysis and Optimization

Abstract: DeepWeaver-1 is a tool supporting cross-cutting program analysis and transformation components, called "weaves". Like an aspect, a DeepWeaver weave consists of a query part, and a part which may modify code. DeepWeaver's query language is based on Prolog, and provides access to data-flow and control-flow reachability analyses. DeepWeaver provides a declarative way to access the internal structure of methods, and supports cross-cutting weaves which operate on code blocks from different parts of the codebase sim… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
5
0

Publication Types

Select...
5
1

Relationship

0
6

Authors

Journals

citations
Cited by 7 publications
(5 citation statements)
references
References 17 publications
0
5
0
Order By: Relevance
“…Beyond SOUL, Visser [2002] argues in favor of syntactic pattern matching, with Fischer and Visser [2004] opting for concrete syntax over AST matching by arguing that "the simple abstract syntax approach quickly becomes cumbersome as the schemas become largerž. Their AutoBayes system combines syntactic pattern matching with Prolog, compared to which DeepWeaver [Falconer et al 2007] adds program rewriting for implementing aspect weaving. Another related system with syntactic pattern matching is our earlier MetaDL [Dura et al 2019], which analyzes a Datalog dialect, in which it needs to match only one syntactic category.…”
Section: Related Workmentioning
confidence: 99%
“…Beyond SOUL, Visser [2002] argues in favor of syntactic pattern matching, with Fischer and Visser [2004] opting for concrete syntax over AST matching by arguing that "the simple abstract syntax approach quickly becomes cumbersome as the schemas become largerž. Their AutoBayes system combines syntactic pattern matching with Prolog, compared to which DeepWeaver [Falconer et al 2007] adds program rewriting for implementing aspect weaving. Another related system with syntactic pattern matching is our earlier MetaDL [Dura et al 2019], which analyzes a Datalog dialect, in which it needs to match only one syntactic category.…”
Section: Related Workmentioning
confidence: 99%
“…Like our system, SOUL uses on-demand evaluation. DeepWeaver [10] supports data flow analysis and program transformation on byte code. Meanwhile, Flix [24] combines Datalog-style fixpoint computations and functional programming for declarative data flow analysis, and can scale IFDS/IDE-style interprocedural data flow analysis to nontrivial software [25].…”
Section: Related Workmentioning
confidence: 99%
“…For example, languages based on graph rewrite rules [18], logic formulas [1]- [3], [7], [14], [20], [26], and constraint programming [13] have been proposed to express structural characteristics. In order to express behavioral characteristics, we find approaches based on reachability queries [8], [24], [25], temporal logic formulas [15], state machines [11], and logic formulas [12], [16] that reason over the results of data flow and control flow analyses. Related to these approaches is also our previous work on SOUL [6].…”
Section: Related Workmentioning
confidence: 99%