We address the problem of synthesizing code completions for pro-grams using APIs. Given a program with holes, we synthesize com-pletions for holes with the most likely sequences of method calls. Our main idea is to reduce the problem of code completion to a natural-language processing problem of predicting probabilities of sentences. We design a simple and scalable static analysis that extracts sequences of method calls from a large codebase, and index these into a statistical language model. We then employ the language model to find the highest ranked sentences, and use them to synthesize a code completion. Our approach is able to synthesize sequences of calls across multiple objects together with their arguments. Experiments show that our...
Context: Code completion aims to help improve developers’ productivity by suggesting the next code t...
Developers extensively use and reuse the Application Programming Interfaces (APIs) to faster the dev...
Probabilistic modeling and reasoning are central tasks in artificial intelligence and machine learni...
Statistical language models have successfully been used to describe and analyze natural language doc...
Abstract—Natural languages like English are rich, complex, and powerful. The highly creative and gra...
Abstract—n-gram statistical language model has been success-fully applied to capture programming pat...
Predicting a sequence of upcoming function calls is impor-tant for optimizing programs written in mo...
Today's programmers, especially data science practitioners, make heavy use of data-processing librar...
Improving developer productivity is an important, but very difficult task, that researchers from bot...
Statistical language models have success-fully been used to describe and analyze natural language do...
Code completion is an editor service in IDEs that proposes code fragments for the user to insert at ...
Analyzing source code using computational linguistics and exploiting the linguistic properties of so...
Code completion is an essential feature of IDEs, yet current auto-completers are restricted to eithe...
Code completion is an integral part of modern Integrated Development Environments (IDEs). Developers...
In recent years, deep learning techniques, particularly transformer models, have demonstrated remark...
Context: Code completion aims to help improve developers’ productivity by suggesting the next code t...
Developers extensively use and reuse the Application Programming Interfaces (APIs) to faster the dev...
Probabilistic modeling and reasoning are central tasks in artificial intelligence and machine learni...
Statistical language models have successfully been used to describe and analyze natural language doc...
Abstract—Natural languages like English are rich, complex, and powerful. The highly creative and gra...
Abstract—n-gram statistical language model has been success-fully applied to capture programming pat...
Predicting a sequence of upcoming function calls is impor-tant for optimizing programs written in mo...
Today's programmers, especially data science practitioners, make heavy use of data-processing librar...
Improving developer productivity is an important, but very difficult task, that researchers from bot...
Statistical language models have success-fully been used to describe and analyze natural language do...
Code completion is an editor service in IDEs that proposes code fragments for the user to insert at ...
Analyzing source code using computational linguistics and exploiting the linguistic properties of so...
Code completion is an essential feature of IDEs, yet current auto-completers are restricted to eithe...
Code completion is an integral part of modern Integrated Development Environments (IDEs). Developers...
In recent years, deep learning techniques, particularly transformer models, have demonstrated remark...
Context: Code completion aims to help improve developers’ productivity by suggesting the next code t...
Developers extensively use and reuse the Application Programming Interfaces (APIs) to faster the dev...
Probabilistic modeling and reasoning are central tasks in artificial intelligence and machine learni...