Mapping Language to Code in Programmatic Context

Srinivasan Iyer, Ioannis Konstas, Alvin Cheung, Luke Zettlemoyer

Research output: Chapter in Book/Report/Conference proceedingConference contribution

110 Citations (Scopus)

Abstract

Source code is rarely written in isolation. It depends significantly on the programmatic context, such as the class that the code would reside in. To study this phenomenon, we introduce the task of generating class member functions given English documentation and the programmatic context provided by the rest of the class. This task is challenging because the desired code can vary greatly depending on the functionality the class provides (e.g., a sort function may or may not be available when we are asked to “return the smallest element” in a particular member variable list). We introduce CONCODE, a new large dataset with over 100,000 examples consisting of Java classes from online code repositories, and develop a new encoder-decoder architecture that models the interaction between the method documentation and the class environment. We also present a detailed error analysis suggesting that there is significant room for future work on this task.
Original languageEnglish
Title of host publicationProceedings of the 2018 Conference on Empirical Methods in Natural Language Processing
PublisherAssociation for Computational Linguistics
Pages1643-1652
Number of pages10
ISBN (Electronic)9781948087841
Publication statusPublished - 31 Oct 2018
Event2018 Conference on Empirical Methods in Natural Language Processing - Brussels, Belgium
Duration: 31 Oct 20184 Nov 2018

Conference

Conference2018 Conference on Empirical Methods in Natural Language Processing
Abbreviated titleEMNLP 2018
Country/TerritoryBelgium
CityBrussels
Period31/10/184/11/18

Fingerprint

Dive into the research topics of 'Mapping Language to Code in Programmatic Context'. Together they form a unique fingerprint.

Cite this