## Identifying Syntactic Differences Between Two Programs (1991)

Venue: | Software - Practice and Experience |

Citations: | 84 - 0 self |

### BibTeX

@ARTICLE{Yang91identifyingsyntactic,

author = {Wuu Yang},

title = {Identifying Syntactic Differences Between Two Programs},

journal = {Software - Practice and Experience},

year = {1991},

volume = {21},

pages = {739--755}

}

### Years of Citing Articles

### OpenURL

### Abstract

this paper is organized into five sections, as follows. The internal form of a program, which is a variant of a parse tree, is discussed in the next section. Then the tree-matching algorithm and the synchronous pretty-printing technique are described. Experience with the comparator for the C language and some performance measurements are also presented. The last section discusses related work and concludes this paper

### Citations

1329 | The C Programming Language
- Kernighan, Ritchie
- 1988
(Show Context)
Citation Context ...3 for the three pairs {N5, N17}, {Nl1, N20) and {N12, N22}. Now we have computed the W matrix. Next the dynamic programming scheme is applied to compute the M matrix. When the algorithm terminates, M =-=[4, 2]-=- is 6. Therefore, the number of pairs in a maximum matching is 7. In this example, there is only one maximum matching, which consists of the following seven pairs: {Nl, N15}, {N2, N16}, {N6, N18}, {N7... |

696 | The string-to-string correction problem - Wagner, Fischer - 1974 |

332 | Simple fast algorithms for the editing distance between trees and related problems - Zhang, Shasha - 1989 |

289 | A linear space algorithm for computing maximal common subsequences - Hirschberg - 1975 |

226 | The tree-to-tree correction problem - Tai - 1979 |

192 | Algorithms for the longest common subsequence problem - Hirschberg |

142 | Pattern-matching in trees - Hoffmann, O’Donnell - 1982 |

129 | The synthesizer generator - Reps, Teitelbaum - 1984 |

107 | The tree-to-tree editing problem - Selkow - 1977 |

99 | Identifying the semantic and textual differences between two versions of a program - Horwitz - 1990 |

77 | The string-to-string correction problem with block moves - Tichy - 1984 |

64 | A file comparison program - Miller, Myers - 1985 |

58 | Matching sequences under deletion/insertion constraints - Sankoff - 1972 |

55 | The longest common subsequence problem revisited - Apostolico, Guerra - 1987 |

49 | Speeding up dynamic programming with applications to molecular biology - Galil, Giancarlo - 1989 |

40 | A tree-to-tree distance and its application to cluster analysis - Lu - 1979 |

36 | A Technique for isolating differences between files - Heckel - 1978 |

29 | A longest common subsequence algorithm suitable for similar text strings - Nakatsu, Kambayashi, et al. - 1982 |

28 | C: A Reference Manual - Harbison, Steele - 1995 |

21 | An algorithm for the distance between two finite sequences - Sellers - 1974 |

11 | Formatted programming languages - Rose, Welsh - 1981 |

8 |
Syntax-directed pretty printing—a first step towards a syntax-directed editor
- Rubin
- 1983
(Show Context)
Citation Context ...tween two trees is defined to be a set of pairs of nodes, one from each tree, such that (1) two nodes in a pair contain identical symbols, (2) a node can match at most one node in the other tree, and =-=(3) t-=-he parent–child relationship as well as the order between sibling nodes are respected. A maximum matching is a matching with the maximum number of pairs. In the Sequence_Matching algorithm, W [ i, j... |

5 | Managing multi-version programs with an - KRUSKAL - 1984 |

2 | Production trees: a compact representation of parsed programs - Waddle - 1990 |

2 | A specification schema for indenting programs - Mateti - 1983 |

2 | Formatted syntaxes and Modula-2 - Woodman - 1986 |