Title :
How Program History Can Improve Code Completion
Author :
Robbes, Romain ; Lanza, Michele
Author_Institution :
Lugano Univ., Lugano
Abstract :
Code completion is a widely used productivity tool. It takes away the burden of remembering and typing the exact names of methods or classes: As a developer starts typing a name, it provides a progressively refined list of candidates matching the name. However, the candidate list always comes in alphabetic order, i.e., the environment is only second-guessing the name based on pattern matching. Finding the correct candidate can be cumbersome or slower than typing the full name. We present an approach to improve code completion with program history. We define a benchmark measuring the accuracy and usefulness of a code completion engine. Further, we use the change history data to also improve the results offered by code completion tools. Finally, we propose an alternative interface for completion tools.
Keywords :
codes; code completion; pattern matching; productivity tool; Benchmark testing; Computer languages; Engines; History; Information resources; Measurement standards; Pattern matching; Performance evaluation; Productivity; Switches;
Conference_Titel :
Automated Software Engineering, 2008. ASE 2008. 23rd IEEE/ACM International Conference on
Conference_Location :
L´Aquila
Print_ISBN :
978-1-4244-2187-9
Electronic_ISBN :
1938-4300
DOI :
10.1109/ASE.2008.42