1. Ready Tools and Prototypes
MCIDiff
MCIDiff is a tool to compute the differences of multiple code clone instances and visualize it simutaneously. The tool helps and supports developers on clone-related tasks such as refactoring and change propagation on duplicated code. The source code is available in https://github.com/llmhyy/mcidiff. You may check ICSE paper and introduction website for more details.
CCDemon
CCDemon is a clone-based code recommender to recommend modification on pasted code. It regards clones of the pasted code as the results of historical copy-and-paste operations and their differences as historical modifications on the same piece of code. CCDemon further mines modifying regulations from the clone differences. Based on the mined modifying regulations, CCDemon dynamically updates the suggested options and their ranking in each slot according to developer's modifications on the pasted code. More detailed can be checked in our ESEC/FSE paper.
Clonepedia
Clonepedia is code clone summarization tool to organize code clone report with syntactic and semantic program information. More details can be checked in our ICSME paper and introduction website.
MICoDE
MICoDE is short for "Mining Implicit Code Template for Design-Level Reuse", which is a tool to automatically extract and abstract recurring designs from code base into design templates. The mined templates allows developers to make further customization for generating new code. The generated code involves the code skeleton of recurring design as well as the code bodies annotated with comments and hints to remind developers of necessary modification.