SECLSep 18, 2020

Towards Full-line Code Completion with Neural Language Models

arXiv:2009.08603v120 citations
Originality Synthesis-oriented
AI Analysis

This work addresses code completion for developers, but it is incremental as it extends existing neural models to a new task.

The paper tackles the problem of single-token code completion by proposing full-line code completion using neural language models, achieving acceptable results on Python corpora with significant room for improvement.

A code completion system suggests future code elements to developers given a partially-complete code snippet. Code completion is one of the most useful features in Integrated Development Environments (IDEs). Currently, most code completion techniques predict a single token at a time. In this paper, we take a further step and discuss the probability of directly completing a whole line of code instead of a single token. We believe suggesting longer code sequences can further improve the efficiency of developers. Recently neural language models have been adopted as a preferred approach for code completion, and we believe these models can still be applied to full-line code completion with a few improvements. We conduct our experiments on two real-world python corpora and evaluate existing neural models based on source code tokens or syntactical actions. The results show that neural language models can achieve acceptable results on our tasks, with significant room for improvements.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes