How Program History Can Improve Code Completion
By Romain Robbes, Michele Lanza. 2008
166 citations recorded by the source corpus.
Subfields: Artificial Intelligence, Computer Networks and Communications, Information Systems, Natural Language Processing, Code Generation & Program Synthesis
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Charles Sutton
- Yoshua Bengio
- Mohit Bansal
- Miltiadis Allamanis
- Pushmeet Kohli
- Quoc V. Le
- Jianfeng Gao
- Percy Liang
In Computer Networks and Communications
- Tien Nhut Nguyen
- Charles Sutton
- Anh Tuan Nguyen
- Alberto Bacchelli
- Koushik Sen
- Vincent J. Hellendoorn
- Earl T. Barr
- Miltiadis Allamanis
In Information Systems
- Charles Sutton
- Miltiadis Allamanis
- Premkumar T. Devanbu
- Vincent J. Hellendoorn
- Earl T. Barr
- Tien Nhut Nguyen
- Georgios Gousios
- Michael Pradel
In Natural Language Processing
- Charles Sutton
- Miltiadis Allamanis
- Earl T. Barr
- Premkumar T. Devanbu
- Vincent J. Hellendoorn
- Koushik Sen
- Michael Pradel
- Rishabh Singh
In Code Generation & Program Synthesis
- Charles Sutton
- Miltiadis Allamanis
- Vincent J. Hellendoorn
- Premkumar T. Devanbu
- Earl T. Barr
- Koushik Sen
- Tien Nhut Nguyen
- Anh Tuan Nguyen
Citations in the corpus
- Competition-level code generation with AlphaCode (2022, background): “More recent intelligent code completion systems can learn from history (Robbes and Lanza, 2008) and large amounts of existing code data (Aye et al., 2021; Svyatkovskiy et al., 2020).”
- When Code Completion Fails: A Case Study on Real-World Completions (2019, methodology): “Code completion tool design could greatly benefit from real-world insights; Robbes & Lanza demonstrated this by using observations from a developer study to improve their code completion tool [5].”
- Learning API Usages from Bytecode: A Statistical Approach (2015, unknown): “[36] improves code completion with program history.”
- Graph-Based Statistical Language Model for Code (2015, unknown): “There exist deterministic approaches to improve code completion/suggestion and code search by using recent editing history [29], [30], cloned code [31], developers’ editing history [32], API usages, examples, and documentation [33], [34], [35], [36], [37], [38], structural context [39], parameter fi”
- Learning natural coding conventions (2014, background): “Code suggestion and completion tools [18, 35, 52, 53, 62] suggest the next token during editing, often from a few initial characters.”
- Graph-Based Mining of In-the-Wild, Fine-Grained, Semantic Code Change Patterns (2019, methodology): “…to detect change patterns, and leverage them to support several tasks such as adapting client code to the changes in a library [5], [6], [31], language migration [47], recommending bug-fixes and code examples [19], [16], [32], [46], code completion [4], [26], [27], [39], and usage patterns [44].”
- Aroma: code recommendation via structural code search (2018, background): “Code completion can be achieved by different approaches from extracting the structural context of the code to mining recent histories of editing [31], [35], [36], [52].”
- CodeFill: Multi-token Code Completion by Jointly learning from Structure and Naming Sequences (2022, methodology): “Traditionally, autocompleters used heuristic rules static type information [20], similar code examples [9], and program history data [42] for suggesting completions.”
- Evaluating the evaluations of code recommender systems: A reality check (2016, methodology): “Instead, we choose to capture more fine-grained code changes directly from the developer’s Integrated Development Environment (IDE), similar to the idea previously proposed by Robbes and Lanza [24].”
- A statistical semantic language model for source code (2013, background): “Robbes and Lanza [19] introduced six strategies to improve code completion using recent histories of modified/inserted code during an editing session and on the methods and class hierarchy related to the current variable.”