Download - Clone Research
![Page 1: Clone Research](https://reader036.vdocuments.us/reader036/viewer/2022082818/56813306550346895d99c3ca/html5/thumbnails/1.jpg)
Detecting clones across multiple programming languages is on the cutting edge of research.
A preliminary version of this was done by Dr. Kraft and his students for C# and VB.◦ They compared the Mono C# parser (written in C#) to the
Mono VB parser (written in VB).◦ Publication:
Nicholas A. Kraft, Brandon W. Bonds, Randy K. Smith: Cross-language Clone Detection. SEKE 2008: 54-59
Clone Research
![Page 2: Clone Research](https://reader036.vdocuments.us/reader036/viewer/2022082818/56813306550346895d99c3ca/html5/thumbnails/2.jpg)
Token sequence of CodeDOM graphs with Levenshtein distance◦ The Levenshtein distance between two sequences is
defined as the minimum number of edits needed to transform one sequence into the other
Performs Comparisons of code files CodeDOM tree is tokenized Based on Distances
◦ Percentage of matching tokens in a sequence
Dr. Kraft Approach
![Page 3: Clone Research](https://reader036.vdocuments.us/reader036/viewer/2022082818/56813306550346895d99c3ca/html5/thumbnails/3.jpg)
Dr. Kraft Approach (cont)
![Page 4: Clone Research](https://reader036.vdocuments.us/reader036/viewer/2022082818/56813306550346895d99c3ca/html5/thumbnails/4.jpg)
◦About 50% complete porting the analysis code
◦Dr. Kraft's code AST, codeDOM and Tokenization's are
woven tightly together
Porting Clone Analysis
![Page 5: Clone Research](https://reader036.vdocuments.us/reader036/viewer/2022082818/56813306550346895d99c3ca/html5/thumbnails/5.jpg)
Only does file-to-file comparisons◦ Does not detect clones in same source file
Can only detect Type 1 and some Type 2 clones
Not very efficient (brute force)
Limitations
![Page 6: Clone Research](https://reader036.vdocuments.us/reader036/viewer/2022082818/56813306550346895d99c3ca/html5/thumbnails/6.jpg)
User Interface