Authors
James R Cordy, Thomas R Dean, Nikita Synytskyy
Publication date
2004/10/4
Book
Proceedings of the 2004 conference of the Centre for Advanced Studies on Collaborative research
Pages
1-12
Description
Previous research shows that most software systems contain significant amounts of duplicated, or cloned, code. Some clones are exact duplicates of each other, while others differ in small details only. We designate these almost-perfect clones as “near-miss” clones. While technically difficult, detection of near-miss clones has many benefits, both academic and practical. Finding these clones can give us better insight into the way developers maintain and reuse code, and we can also parameterize and remove near-miss clones to reduce overall source code size and decrease system complexity.
This paper presents a simple, general and practical way to detect near-miss clones, and summarizes the results of its application to two production websites. We use standard lexical comparison tools coupled with language-specific extractors to locate potential clones. Our approach separates code comparisons from code understanding, and makes the comparisons language independent. This makes it easy to adapt to different programming languages.
Total citations
200520062007200820092010201120122013201420152016201720182019202020212022202320246591110648415118105885642
Scholar articles
JR Cordy, TR Dean, N Synytskyy - Proceedings of the 2004 conference of the Centre for …, 2004