Active Code Completion: Integrating Specialized Code Generation Palettes into Development Environments

Main Article Content

Teja Nagavardhan Talluri

Abstract

Code completion menus have increasingly supplanted standalone API browsers for developers due to their seamless integration into the development workflow. This paper introduces ”active code completion,” an architecture that empowers library developers to embed interactive and highly-specialized code generation interfaces, referred to as palettes, directly within the code editor. We explore the contexts in which such a system can enhance productivity and discuss the design constraints that inform both the system architecture and the specific code completion interfaces. We present Graphite, a system designed for the Eclipse Java development environment, as a primary implementation. Utilizing Graphite, we develop a palette tailored for crafting regular expressions and conduct a pilot study to assess its effectiveness. Our findings demonstrate the feasibility of integrating specialized code completion interfaces into editors, providing empirical support for the assertion that such innovations significantly benefit professional developers by streamlining coding tasks and enhancing overall efficiency.

Article Details

Section
Articles