Code Completion from Abbreviated Input
- 1 November 2009
- conference paper
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 332-343
- https://doi.org/10.1109/ase.2009.64
Abstract
Abbreviation Completion is a novel technique to improve the efficiency of code-writing by supporting code completion of multiple keywords based on non-predefined abbreviated input - a different approach from conventional code completion that finds one keyword at a time based on an exact character match. Abbreviated input is expanded into keywords by a Hidden Markov Model learned from a corpus of existing code. The technique does not require the user to memorize abbreviations and provides incremental feedback of the most likely completions. This paper presents the algorithm for abbreviation completion, integrated with a new user interface for multiple-keyword completion. We tested the system by sampling 3000 code lines from open source projects and found that more than 98% of the code lines could be resolved from acronym-like abbreviations. A user study found 30% reduction in time usage and 41% reduction of keystrokes over conventional code completion.Keywords
This publication has 7 references indexed in Scilit:
- How Program History Can Improve Code CompletionPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2008
- Keyword programming in javaPublished by Association for Computing Machinery (ACM) ,2007
- Using task context to improve programmer productivityPublished by Association for Computing Machinery (ACM) ,2006
- XSnippetPublished by Association for Computing Machinery (ACM) ,2006
- Jungloid miningPublished by Association for Computing Machinery (ACM) ,2005
- A tree-trellis based fast search for finding the N-best sentence hypotheses in continuous speech recognitionPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1991
- A tutorial on hidden Markov models and selected applications in speech recognitionProceedings of the IEEE, 1989