2012
DOI: 10.1002/spe.2159
|View full text |Cite
|
Sign up to set email alerts
|

Effective strategic programming for Java developers

Abstract: SUMMARYIn object programming languages, the Visitor design pattern allows separation of algorithms and data structures. When applying this pattern to tree‐like structures, programmers are always confronted with the difficulty of making their code evolve. One reason is that the code implementing the algorithm is interwound with the code implementing the traversal inside the visitor. When implementing algorithms such as data analyses or transformations, encoding the traversal directly into the algorithm turns ou… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
5
0
1

Year Published

2013
2013
2020
2020

Publication Types

Select...
3
2
1

Relationship

1
5

Authors

Journals

citations
Cited by 7 publications
(6 citation statements)
references
References 46 publications
0
5
0
1
Order By: Relevance
“…For instance, properties of confluence, termination, or completeness for rewriting under strategies have been addressed, either based on schematization of derivation trees, as in [12], or by tuning proof methods to handle specific strategies (innermost, outermost, lazy strategies) as in [10,11]. Other approaches as [4] use strategies transformation to equivalent rewrite systems to be able to reuse well-known methods. Finally, properties of strategies such as fairness or loop-freeness could be worthfully explored by making connections between different communities (functional programming, proof theory, verification, game theory,...).…”
Section: Resultsmentioning
confidence: 99%
“…For instance, properties of confluence, termination, or completeness for rewriting under strategies have been addressed, either based on schematization of derivation trees, as in [12], or by tuning proof methods to handle specific strategies (innermost, outermost, lazy strategies) as in [10,11]. Other approaches as [4] use strategies transformation to equivalent rewrite systems to be able to reuse well-known methods. Finally, properties of strategies such as fairness or loop-freeness could be worthfully explored by making connections between different communities (functional programming, proof theory, verification, game theory,...).…”
Section: Resultsmentioning
confidence: 99%
“…Another extension is to provide ways to change the strategy of application of these rules. A very flexible solution would be to allow expert users to write their own strategies as it is possible in embedded term rewriting tools [5].…”
Section: Discussionmentioning
confidence: 99%
“…Java is a widely used object‐oriented programming language with the characteristics open‐source and cross‐platform . A typical software framework contains presentation layer, business logic layer, and data access layer .…”
Section: Related Frameworkmentioning
confidence: 99%