On the Uniqueness of Code Redundancies

On the Uniqueness of Code Redundancies

29 June 2017 Paper

Authors: Bin Lin, Luca Ponzanelli, Andrea Mocci, Gabriele Bavota, Michele Lanza

2017 IEEE/ACM 25th International Conference on Program Comprehension (ICPC)

Citations
Google Scholar

Abstract. Code redundancy widely occurs in software projects. Researchers have investigated the existence, causes, and impacts of code redundancy, showing that it can be put to good use, for example in the context of code completion. When analyzing source code redundancy, previous studies considered software projects as sequences of tokens, neglecting the role of the syntactic structures enforced by programming languages. However, differences in the redundancy of such structures may jeopardize the performance of applications leveraging code redundancy. We present a study of the redundancy of several types of code constructs in a large-scale dataset of active Java projects mined from GitHub, unveiling that redundancy is not uniform and mainly resides in specific code constructs. We further investigate the implications of the locality of redundancy by analyzing the performance of language models when applied to code completion. Our study discloses the perils of exploiting code redundancy without taking into account its strong locality in specific code constructs.

Coauthors

Pre-Print

Project

1 April 2013 Project Postdoctoral Researcher

HI-SEA: Holistic Immersive Software Evolution Ambient

A holistic immersive ambient for software evolution, integrating the data around a project into a visual environment for analysis and intelligent recommendations.

HI-SEA: Holistic Immersive Software Evolution Ambient

Thanks for reading!

On the Uniqueness of Code Redundancies

29 June 2017 Paper 0