English

A Convolutional Neural Network for Language-Agnostic Source Code Summarization

Computation and Language 2019-04-02 v1 Machine Learning Machine Learning

Abstract

Descriptive comments play a crucial role in the software engineering process. They decrease development time, enable better bug detection, and facilitate the reuse of previously written code. However, comments are commonly the last of a software developer's priorities and are thus either insufficient or missing entirely. Automatic source code summarization may therefore have the ability to significantly improve the software development process. We introduce a novel encoder-decoder model that summarizes source code, effectively writing a comment to describe the code's functionality. We make two primary innovations beyond current source code summarization models. First, our encoder is fully language-agnostic and requires no complex input preprocessing. Second, our decoder has an open vocabulary, enabling it to predict any word, even ones not seen in training. We demonstrate results comparable to state-of-the-art methods on a single-language data set and provide the first results on a data set consisting of multiple programming languages.

Keywords

Cite

@article{arxiv.1904.00805,
  title  = {A Convolutional Neural Network for Language-Agnostic Source Code Summarization},
  author = {Jessica Moore and Ben Gelman and David Slater},
  journal= {arXiv preprint arXiv:1904.00805},
  year   = {2019}
}

Comments

ENASE 2019