2013
DOI: 10.1016/j.scico.2011.11.006
|View full text |Cite
|
Sign up to set email alerts
|

Programming errors in traversal programs over structured data

Abstract: Traversal strategies provide an established means of describing automated queries, analyses, transformations, and other non-trivial computations on deeply structured data (including, most notably, data representations of software artifacts such as programs). The resulting traversal programs are prone to programming errors. We are specifically concerned with errors that go beyond classic type errors, in particular: (i) divergence of traversal, (ii) unintentional extent of traversal into data, (iii) trivial trav… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
4
0

Year Published

2013
2013
2017
2017

Publication Types

Select...
3
2
1

Relationship

2
4

Authors

Journals

citations
Cited by 11 publications
(4 citation statements)
references
References 33 publications
0
4
0
Order By: Relevance
“…While one kind of errors in Section 3.3 has been previously identified in [10], our approach in Section 4 provides a more precise solution. A unifying theme among all of these errors is the insufficient precision of the static type analysis provided by the type system -in our case SML's type system.…”
Section: Categories Of Errorsmentioning
confidence: 85%
See 1 more Smart Citation
“…While one kind of errors in Section 3.3 has been previously identified in [10], our approach in Section 4 provides a more precise solution. A unifying theme among all of these errors is the insufficient precision of the static type analysis provided by the type system -in our case SML's type system.…”
Section: Categories Of Errorsmentioning
confidence: 85%
“…In [10], the importance of error detection in strategic rewriting has been previously highlighted as a major research problem. The present paper makes relevant contributions in so far that specific categories of programming errors are identified, and a corresponding static analysis is devised.…”
Section: Related Workmentioning
confidence: 99%
“…Beyond any questions traversal programming is an expressive and exciting paradigm, but as Lämmel and others [11] point out in their comprehensive study, error-free use of strategy combinators requires expertise, not mentioning the difficulties of formal verification (the termination property of a complex strategy alone is a considerably difficult problem). The paper characterises typical mistakes in strategic programming, and one of their findings is that errors mostly stem from mixing up selection of terms of interest (their type and pattern), keeping track of the origin of data, checking side conditions and doing actual transformation.…”
Section: Transformation Definitionmentioning
confidence: 99%
“…For instance, a transformation may continuously expand some redex for the down join point. Other programming techniques for traversals are also susceptible to this problem [16].…”
Section: Termination Of Walksmentioning
confidence: 99%