AI-powered programming assistants are increasingly gaining popularity, with GitHub Copilot alone used by over a million developers worldwide. These tools are far from perfect, however, producing code suggestions that may be incorrect or incomplete in subtle ways. As a result, developers face a new set of challenges when they need to understand, validate, and choose between AI's suggestions. This paper explores whether Live Programming, a continuous display of a program's runtime values, can help address these challenges. We introduce Live Exploration of AI-Generated Programs, a new interaction model for AI programming assistants that supports exploring multiple code suggestions through Live Programming. We implement this interaction model in a prototype Python environment LEAP and evaluate it through a between-subject study. Our results motivate several design opportunities for future AI-powered programming tools.
翻译:人工智能编程助手日益普及,仅GitHub Copilot就已服务全球超过百万开发者。然而,这些工具远非完美,其生成的代码建议可能存在细微的谬误或缺失。因此,开发者在理解、验证及筛选AI建议时面临全新挑战。本文探讨实时编程——即持续展示程序运行时值的技术——能否帮助应对这些挑战。我们提出“AI生成程序的实时探索”这一新型交互模型,该模型通过实时编程支持对多个代码建议的探索。我们在Python原型环境LEAP中实现了该交互模型,并通过组间实验进行评估。研究结果为未来AI编程工具的设计提供了若干重要机遇。