๐Ÿ“–
Finding Code-Clone Snippets in Large Source-Code Collection by ccgrep
Katsuro Inoue, Yuya Miyamoto, Daniel M. German, Takashi Ishio

Finding Code-Clone Snippets in Large Source-Code Collection by ccgrep

Science & Mathematics Published 2021 Verification Pending

Overview & Synopsis

Finding the same or similar code snippets in the source code for a query code snippet is one of the fundamental activities in software maintenance. Code clone detectors detect the same or similar code snippets, but they report all of the code clone pairs in the target, which are generally excessive to the users. In this paper, we propose ccgrep, a token-based pattern matching tool with the notion of code clone pairs. The user simply inputs a code snippet as a query and specifies the target source code, and gets the matched code snippets as the result. The query and the result snippets form clone pairs. The use of special tokens (named meta-tokens) in the query allows the user to have precise control over the matching. It works for the source code in C, C++, Java, and Python on Windows or Unix with practical scalability and performance. The evaluation results show that ccgrep is effective in finding intended code snippets in large Open Source Software.

Indexed from repository: HAL Open Science (hal.science)
Loading document from verified source...
Keyboard Shortcuts: ← / → for pages • + / - for zoom • 0 to fit width Powered by Mozilla PDF.js v3.11

Document Information

Document Title Finding Code-Clone Snippets in Large Source-Code Collection by ccgrep
Author / Organization Katsuro Inoue, Yuya Miyamoto, Daniel M. German, Takashi Ishio
Subject & Discipline Multidisciplinary Academic Open Research
Categories Science & Mathematics
Publication Year 2021
License / Rights Open Access / Creative Commons
Resource Verification Listed PDF (Verification Pending)
Original Host Website HAL Open Science (hal.science)
File Format application/pdf (Portable Document Format)
Language EN
Catalog ID DOC-243600
Original Source Link Visit Source Page on hal.science »