Student or educator? Sign up with your school email and get 6 months of Pro free.
Cited by 346

The DOI matches its Crossref record.

Identifying syntactic differences between two programs

Yang, Wuu·1991·Software: Practice and Experience

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 knowledge of the grammar. The algorithm, which is based on a dynamic programming scheme, can point out the differences between two programs more accurately than previous text comparison tools. Finally, the two programs are pretty‐printed ‘synchronously’ with the differences highlighted so that the differences are easily identified.

Overview

The claims and statistics of this paper haven’t been checked yet.

Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.

A few free checks a day · papers already verified open instantly · results are public

Integrity signals

Registry

Crossref · 10.1002/spe.4380210706

Cites

Statistics

Verification

Claims the paper makes

The claims and statistics of this paper haven’t been checked yet.

Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.

A few free checks a day · papers already verified open instantly · results are public

Self-check

Percentages, sums and reported differences re-computed from the paper’s own numbers.

The self-check needs the paper’s full text.

Citations

Cites

No references could be resolved yet.

Research works printed but not linked: 31

  1. Aho A. V., 1986, Compilers: Principles, Techniques, and Tools
  2. 10.1145/357114.357115 · doi:10.1145/357114.357115
  3. 10.1109/TSE.1983.236456 · doi:10.1109/tse.1983.236456
  4. Kernigham B. W., 1978, The C Programming Language
  5. 10.1145/77606.77609 · DOI
  6. Harbison S. P., 1984, C: A Reference Manual
  7. 10.1073/pnas.69.1.4 · DOI · Paper page
  8. 10.1016/0097-3165(74)90050-8 · doi:10.1016/0097-3165(74)90050-8
  9. 10.1145/321796.321811 · DOI · Paper page
  10. 10.1145/321879.321880 · DOI · Paper page
  11. 10.1145/322033.322044 · DOI · Paper page
  12. 10.1007/BF00264437 · doi:10.1007/bf00264437
  13. 10.1002/spe.4380151102 · DOI
  14. 10.1007/BF01840365 · doi:10.1007/bf01840365
  15. 10.1016/0304-3975(89)90101-1 · doi:10.1016/0304-3975(89)90101-1
  16. 10.1145/359460.359467 · DOI
  17. 10.1145/357401.357404 · doi:10.1145/357401.357404
  18. 10.1145/360825.360861 · DOI · Paper page
  19. 10.1002/spe.4380110702 · DOI
  20. 10.1002/spe.4380130206 · doi:10.1002/spe.4380130206
  21. 10.1002/spe.4380160702 · doi:10.1002/spe.4380160702
  22. T.RepsandT.Teitelbaum The synthesizer generator.Proceedings of the ACM SIGSOFT/SIG‐PLAN Software Engineering Symposium on Practical Software Development Environments Pittsburgh PA 23‐25 April 1984; · doi:10.1145/800020.808247
  23. 1984, ACM SIGPLAN Notices, 19, 41
  24. 10.1145/322290.322295 · DOI
  25. 10.1137/0218082 · DOI · Paper page
  26. 10.1145/322139.322143 · DOI · Paper page
  27. 10.1109/TPAMI.1979.6786615 · DOI
  28. 10.1016/0020-0190(77)90064-3 · DOI
  29. S.Horwitz Identifying the semantic and textual differences between two versions of a program Proceedings of the SIGPLAN 90 Conference on Programming Language Design and Implementation White Plain New York 20‐22 June 1990; · doi:10.1145/93542.93574
  30. 10.1145/93548.93574 · doi:10.1145/93548.93574
  31. 10.1147/rd.281.0074 · doi:10.1147/rd.281.0074

Cited by

Metadata

Authors
Yang, W.
Venue
Software: Practice and Experience
Publisher
Wiley
Published
1991-07
Volume
21
Issue
7
Pages
739-755
ISSN
  • 0038-0644 (ISSN-L)
  • 1097-024X
OpenAlex
W2049461910
Cited by
346
References
0
FWCI
10.70
Type
journal article
Language
en
Open access
closed

About these checks

Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.

Statistics and arithmetic are recomputed, not judged.

Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.

What counts as a claim ›How we measure confidence ›How we check this ›

Are you an author, or do you see a problem with this page? Request a review

Data sources

Bibliographic data: Semantic Scholar, OpenAlex, Crossref.

Contains information from the Semantic Scholar Academic Graph Datasets, made available under the ODC Attribution License (ODC-BY 1.0).

Semantic Scholar’s data is described in: Kinney, R., et al. (2023). The Semantic Scholar Open Data Platform. arXiv:2301.10140.