Our system is currently under heavy load due to increased usage. We're actively working on upgrades to improve performance. Thank you for your patience.
1991
DOI: 10.1002/spe.4380210706
|View full text |Cite
|
Sign up to set email alerts
|

Identifying syntactic differences between two programs

Abstract: Programmers frequently face the need to identify the differences between two programs, usually two different versions of a program. Text‐based tools such as the UNIXr̀ utility diff often produce unsatisfactory comparisons because they cannot accurately pinpoint the differences and because they sometimes produce irrelevant differences. Since programs have a rigid syntactic structure as described by the grammar of the programming language in which they are written, we develop a comparison algorithm that exploits… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
173
0
1

Year Published

2004
2004
2016
2016

Publication Types

Select...
5
4

Relationship

0
9

Authors

Journals

citations
Cited by 284 publications
(177 citation statements)
references
References 28 publications
0
173
0
1
Order By: Relevance
“…Additionally, TMDIFF supports elements without identity. In that case, TMDIFF performs a structural diff on the containment hierarchy (see, e.g., [20]). …”
Section: Discussion and Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Additionally, TMDIFF supports elements without identity. In that case, TMDIFF performs a structural diff on the containment hierarchy (see, e.g., [20]). …”
Section: Discussion and Related Workmentioning
confidence: 99%
“…Note that the anonymous Transition objects lack such labels. In this case, the objects do not have an identity, and the difference algorithm will perform structural differencing (e.g., [20]), instead of semantic, model-based differencing [1]. Figure 2 shows two additional versions of the state machine of Fig.…”
Section: Overviewmentioning
confidence: 99%
“…We use a simple tree matching algorithm introduced in [16] which was first proposed to compare two computer programs in software engineering. It calculates the similarity of two trees by finding the best match through dynamic programming with complexity O(n 1 n 2 ), where n 1 is the size (number of nodes) of T and n 2 is the size of T .…”
Section: Sibling Table Recognitionmentioning
confidence: 99%
“…In this work, we use a restricted tree matching algorithm, called simple tree matching (STM) (Yang 1991). STM evaluates the similarity of two trees by producing the maximum matching through dynamic programming with complexity O(n 1 n 2 ), where n 1 and n 2 are the sizes of trees A and B respectively.…”
Section: Fig 2: the Overall Net Algorithmmentioning
confidence: 99%