## 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

1344 | 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... |

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

334 | Simple Fast Algorithms for the Editing Distance between Trees and Related Problems - Zhang, Shasha - 1989 |

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

227 | The tree{to{tree correction problem - Tai - 1979 |

193 | Algorithms for the longest common subsequence problem - Hirschberg - 1977 |

143 | 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 |

65 | A File Comparison Program - Miller, Myers - 1985 |

58 | Matching Sequences Under Deletion-insertion Constraints - Sankoff - 1972 |

56 | 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 |

39 | A Technique for Isolating Differences Between Files - Heckel |

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

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

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 |