Title :
Code Completion from Abbreviated Input
Author :
Han, Sangmok ; Wallace, David R. ; Miller, Robert C.
Author_Institution :
Massachusetts Inst. of Technol., Cambridge, MA, USA
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 :
hidden Markov models; program compilers; user interfaces; Hidden Markov Model; abbreviation completion; acronym-like abbreviations; character match; code completion; code-writing; existing code corpus; keyword; multiple-keyword completion; nonpredefined abbreviated; open source projects; user interface; Acceleration; Data mining; Feedback; Hidden Markov models; Lead; Programming profession; Sampling methods; Software engineering; System testing; User interfaces; Abbreviation; Code Assistants; Code Completion; Data Mining; Hidden Markov Model; Multiple Keywords;
Conference_Titel :
Automated Software Engineering, 2009. ASE '09. 24th IEEE/ACM International Conference on
Conference_Location :
Auckland
Print_ISBN :
978-1-4244-5259-0
Electronic_ISBN :
1938-4300
DOI :
10.1109/ASE.2009.64