Detecting Clones Across Microsoft .NET Programming Languages

@article{AlOmari2012DetectingCA,
  title={Detecting Clones Across Microsoft .NET Programming Languages},
  author={Farouq Al-Omari and Iman Keivanloo and Chanchal Kumar Roy and Juergen Rilling},
  journal={2012 19th Working Conference on Reverse Engineering},
  year={2012},
  pages={405-414}
}
The Microsoft .NET framework and its language family focus on multi-language development to support interoperability across several programming languages. The framework allows for the development of similar applications in different languages through the reuse of core libraries. As a result of such a multi-language development, the identification and trace ability of similar code fragments (clones) becomes a key challenge. In this paper, we present a clone detection approach for the .NET… Expand
LICCA: A tool for cross-language clone detection
TLDR
LICCA is integrated with the SSQSA platform and relies on its high-level representation of code in which it is possible to extract syntactic and semantic characteristics of code fragments positing full cross-language clone detection. Expand
Mining revision histories to detect cross-language clones without intermediates
TLDR
This paper proposes a novel approach, CLCMiner, that detects cross-language clones automatically without the need of an intermediate language, and mines such clones from revision histories, which reflect how programmers maintain cross- language clones in practice. Expand
CLCDSA: Cross Language Code Clone Detection using Syntactical Features and API Documentation
TLDR
CLCDSA is proposed, a cross language clone detector which can detect CLCs without extensive processing of the source code and without the need to generate an intermediate representation, and outperforms all available models in detecting cross language clones. Expand
Structural and Nominal Cross-Language Clone Detection
TLDR
In this paper, the challenge of cross-language clone detection is addressed and it is shown that there are many real-world cross- language clones that existing techniques cannot detect. Expand
Literature Survey of Software Clones
TLDR
The literature survey of all the clone detection techniques has been done and an approach which will use a combination of tree and token based approach in order to detect the code clones is proposed. Expand
On the feasibility of detecting cross-platform code clones via identifier similarity
TLDR
This paper investigates the identifier similarity of the same mobile application on different platforms and provides insights about the feasibility of cross-platform clone detection via identifier similarity and finds that the smaller KL-Divergence the application has, the more accurate the clones detected by identifiers will be. Expand
A Survey on Code Clone, Its Behavior and Applications
TLDR
The findings indicate that the management of Clones should be started at the earliest and the approaches followed in the tools and the Code Clone patterns that are used for qualitative analysis are summarized. Expand
SeByte: Scalable clone and similarity search for bytecode
TLDR
The preliminary study shows that SeByte can detect clones that are missed by existing approaches due to the differences in the input data and the search algorithm, and builds a scalable bytecode clone search engine that meets the requirements of a classical search engine including the ranking of result sets. Expand
Approach for estimating similarity between procedures in differently compiled binaries
TLDR
An approach for estimating the level of similarity between the procedures originating from different binary codes using a set of software metrics adapted from the high level languages and new metrics that take into account syntactical changes that are introduced by the usage of different toolsets and optimizations. Expand
LHDiff: A Language-Independent Hybrid Approach for Tracking Source Code Lines
TLDR
A language-independent technique for tracking source code lines across versions that leverages simhash technique together with heuristics to improve accuracy is proposed that shows better performance than a state-of-the-art language- dependent approach. Expand
...
1
2
3
...

References

SHOWING 1-10 OF 26 REFERENCES
Cross-language Clone Detection
TLDR
This paper introduces a tool, which is based on the CodeDOM library that is included with the Microsoft .NET Framework, to demonstrate the existence of cross-language clones in a real software system that contains both C# and Visual Basic.NET source code. Expand
Supporting the analysis of clones in software systems
TLDR
An in-depth case study of cloning in a large software system that is in wide use, the Apache Web server, is presented; insights into cloning as it exists in this system are provided, and techniques to manage and make effective use of the large result sets of clone-detection tools are demonstrated. Expand
Enhancing Source-Based Clone Detection Using Intermediate Representation
TLDR
A technique is proposed that transforms the source code to an intermediate representation, and then reuses established source-based clone detection techniques to detect clones in the intermediate representation. Expand
Comparison and evaluation of code clone detection techniques and tools: A qualitative approach
TLDR
A qualitative comparison and evaluation of the current state-of-the-art in clone detection techniques and tools is provided, and a taxonomy of editing scenarios that produce different clone types and a qualitative evaluation of current clone detectors are evaluated. Expand
NICAD: Accurate Detection of Near-Miss Intentional Clones Using Flexible Pretty-Printing and Code Normalization
  • C. Roy, J. Cordy
  • Computer Science
  • 2008 16th IEEE International Conference on Program Comprehension
  • 2008
TLDR
A new language- specific parser-based but lightweight clone detection approach exploiting a novel application of a source transformation system that is capable of finding near-miss clones with high precision and recall, and with reasonable performance. Expand
Comparison and Evaluation of Clone Detection Tools
TLDR
An experiment is presented that evaluates six clone detectors based on eight large C and Java programs (altogether almost 850 KLOC) and selects techniques that cover the whole spectrum of the state-of-the-art in clone detection. Expand
On the Effectiveness of Simhash for Detecting Near-Miss Clones in Large Scale Software Systems
TLDR
Simhash, a state of the art fingerprint based data similarity measurement technique for detecting both exact and near-miss clones in large scale software systems is investigated and experimental data show that simhash is indeed effective in identifying various types of clones in a software system despite wide variations in experimental circumstances. Expand
“Cloning considered harmful” considered harmful: patterns of cloning in software
TLDR
It is found that as many as 71% of the clones could be considered to have a positive impact on the maintainability of the software system. Expand
From Whence It Came: Detecting Source Code Clones by Analyzing Assembler
  • I. Davis, M. Godfrey
  • Computer Science
  • 2010 17th Working Conference on Reverse Engineering
  • 2010
TLDR
This paper introduces a complementary technique of analyzing generated assembler for clones and shows how it can serve as a valuable complementary semantic approach to syntactic source code based detection. Expand
A novel approach based on formal methods for clone detection
TLDR
This paper presents an approach based on formal methods for detecting code clones that performs the analysis on Java bytecode, which is transformed into CCS processes which are successively checked for equivalence. Expand
...
1
2
3
...