Viewing functions as token sequences to highlight similarities in source code - Archive ouverte HAL Accéder directement au contenu
Article Dans Une Revue Science of Computer Programming Année : 2013

Viewing functions as token sequences to highlight similarities in source code

Résumé

The detection of similarities in source code has applications not only in software re-engineering (to eliminate redundancies) but also in software plagiarism detection. This latter can be a challenging problem since more or less extensive edits may have been performed on the original copy: insertion or removal of useless chunks of code, rewriting of expressions, transposition of code, inlining and outlining of functions, etc. In this paper, we propose a new similarity detection technique not only based on token sequence matching but also on the factorization of the function call graphs. The factorization process merges shared chunks (factors) of codes to cope, in particular, with inlining and outlining. The resulting call graph offers a view of the similarities with their nesting relations. It is useful to infer metrics quantifying similarity at a function level.
Fichier principal
Vignette du fichier
article.pdf (531.79 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-00780290 , version 1 (23-01-2013)

Identifiants

Citer

Michel Chilowicz, Étienne Duris, Gilles Roussel. Viewing functions as token sequences to highlight similarities in source code. Science of Computer Programming, 2013, 78 (10), pp.1871-1891. ⟨10.1016/j.scico.2012.11.008⟩. ⟨hal-00780290⟩
211 Consultations
261 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More