clone research

6
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

Upload: charde-kaufman

Post on 02-Jan-2016

15 views

Category:

Documents


2 download

DESCRIPTION

Clone Research. 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: - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Clone Research

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

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

Dr. Kraft Approach (cont)

Page 4: Clone Research

◦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

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

User Interface