GumTreeの改良ツールIJM(Iterative Java Matcher)の論文.
GumTreeはAST単位でソースコードの差分を出力するツールである. GumTreeは1. 変更前後でのASTのノードのマッチング,2. 編集スクリプトの計算 の二段階で構成されている. 2は十分に最適化されている(証明済み)だが,1に難があり不正確な差分を出力することが多い. IJMは以下の方法を採用してノードのマッチング精度を向上させている.
多少恣意的ではあるかも知れないが,2ページ目で使われている例が完璧すぎて面白い.