Automatic programming has seen increasing popularity due to the emergence of tools like GitHub Copilot which rely on Large Language Models (LLMs). At the same time, automatically generated code faces challenges during deployment due to concerns around quality and trust. In this article, we study automated coding in a general sense and study the concerns around code quality, security and related issues of programmer responsibility. These are key issues for organizations while deciding on the usage of automatically generated code. We discuss how advances in software engineering such as program repair and analysis can enable automatic programming. We conclude with a forward looking view, focusing on the programming environment of the near future, where programmers may need to switch to different roles to fully utilize the power of automatic programming. Automated repair of automatically generated programs from LLMs, can help produce higher assurance code from LLMs, along with evidence of assurance
翻译:自动编程因依赖大型语言模型(LLMs)的工具(如GitHub Copilot)的出现而日益流行。与此同时,自动生成的代码在部署过程中因质量和信任问题面临挑战。本文从广义上研究自动编码,并探讨代码质量、安全性及相关程序员责任问题。这些是组织在决定使用自动生成代码时的关键问题。我们讨论了软件工程领域的进展(如程序修复和分析)如何赋能自动编程。最后,我们以前瞻性视角展望了不久的将来的编程环境——程序员可能需要转换角色以充分利用自动编程的力量。对LLMs自动生成程序进行自动修复,有助于产出具有更高保证的代码,并附带保证证据。