Fast parallel algorithms for the unit cost editing distance between trees
SPAA '89 Proceedings of the first annual ACM symposium on Parallel algorithms and architectures
Simple fast algorithms for the editing distance between trees and related problems
SIAM Journal on Computing
C4.5: programs for machine learning
C4.5: programs for machine learning
The Tree-to-Tree Correction Problem
Journal of the ACM (JACM)
A compression algorithm for DNA sequences and its applications in genome comparison
RECOMB '00 Proceedings of the fourth annual international conference on Computational molecular biology
Algorithms on Trees and Graphs
Algorithms on Trees and Graphs
CCFinder: a multilinguistic token-based code clone detection system for large scale source code
IEEE Transactions on Software Engineering
Experiment on the Automatic Detection of Function Clones in a Software System Using Metrics
ICSM '96 Proceedings of the 1996 International Conference on Software Maintenance
Linear-Time, Incremental Hierarchy Inference for Compression
DCC '97 Proceedings of the Conference on Data Compression
Measuring Clone Based Reengineering Opportunities
METRICS '99 Proceedings of the 6th International Symposium on Software Metrics
On finding duplication and near-duplication in large software systems
WCRE '95 Proceedings of the Second Working Conference on Reverse Engineering
An Intermediate Representation for Reverse Engineering Analyses
WCRE '98 Proceedings of the Working Conference on Reverse Engineering (WCRE'98)
Advanced Clone-Analysis to Support Object-Oriented System Refactoring
WCRE '00 Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE'00)
Identifying Similar Code with Program Dependence Graphs
WCRE '01 Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01)
Clone Detection Using Abstract Syntax Trees
ICSM '98 Proceedings of the International Conference on Software Maintenance
A Language Independent Approach for Detecting Duplicated Code
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
Problems Creating Task-relevant Clone Detection Reference Data
WCRE '03 Proceedings of the 10th Working Conference on Reverse Engineering
Supporting the analysis of clones in software systems: Research Articles
Journal of Software Maintenance and Evolution: Research and Practice - IEEE International Conference on Software Maintenance (ICSM2005)
Method and implementation for investigating code clones in a software system
Information and Software Technology
Comparison and Evaluation of Clone Detection Tools
IEEE Transactions on Software Engineering
Clone Detection via Structural Abstraction
WCRE '07 Proceedings of the 14th Working Conference on Reverse Engineering
Extending the Reflexion Method for Consolidating Software Variants into Product Lines
WCRE '07 Proceedings of the 14th Working Conference on Reverse Engineering
Empirical evaluation of clone detection using syntax suffix trees
Empirical Software Engineering
An evaluation of code similarity identification for the grow-and-prune model
Journal of Software Maintenance and Evolution: Research and Practice - Special Issue on the 12th Conference on Software Maintenance and Reengineering (CSMR 2008)
Comparison and evaluation of code clone detection techniques and tools: A qualitative approach
Science of Computer Programming
Supporting the Grow-and-Prune Model in Software Product Lines Evolution Using Clone Detection
CSMR '08 Proceedings of the 2008 12th European Conference on Software Maintenance and Reengineering
Extending the reflexion method for consolidating software variants into product lines
Software Quality Control
An Assessment of Type-3 Clones as Detected by State-of-the-Art Tools
SCAM '09 Proceedings of the 2009 Ninth IEEE International Working Conference on Source Code Analysis and Manipulation
Shared information and program plagiarism detection
IEEE Transactions on Information Theory
IEEE Transactions on Information Theory
Understanding the evolution of type-3 clones: an exploratory study
Proceedings of the 10th Working Conference on Mining Software Repositories
Hi-index | 0.00 |
Code reuse through copying and pasting leads to so-called software clones. These clones can be roughly categorized into identical fragments (type-1 clones), fragments with parameter substitution (type-2 clones), and similar fragments that differ through modified, deleted, or added statements (type-3 clones). Although there has been extensive research on detecting clones, detection of type-3 clones is still an open research issue due to the inherent vagueness in their definition. In this paper, we analyze type-3 clones detected by state-of-the-art tools and investigate type-3 clones in terms of their syntactic differences. Then, we derive their underlying semantic abstractions from their syntactic differences. Finally, we investigate whether there are code characteristics that indicate that a tool-suggested clone candidate is a real type-3 clone from a human's perspective. Our findings can help developers of clone detectors and clone refactoring tools to improve their tools.