
论文主要内容总结该论文聚焦于大语言模型(LLMs)在自动代码生成中存在的“语义鸿沟”问题,系统论证了编程语言(PL)技术对弥合这一鸿沟的核心作用。核心问题:LLMs虽在代码生成中表现出强大能力,但由于其统计特性和黑箱特性,生成的代码存在语法错误、语义幻觉(如虚构函数)、逻辑不一致等问题,且缺乏可靠性、安全性和可解释性,难以满足生产环境需求。问题表现:具体体现为三个层面——语法与语义错误(从简单语法错误到深层功能正确性幻觉)、对代码的深度理解不足(仅处理线性token流,缺乏对结构和动态语义的把握)、可靠性与安全隐患(高漏洞率、知识产权风险、黑箱导致的不可追溯性)。解决方案:提出通过整合编程语言技术解决上述问题,包括:结构化程序表示:利用中间表示(IRs)、抽象语法树(AST)、控制流图(CFG)和数据流图(DFG)等,帮助LLMs突破线性token限制,把握代码结构与语义;形式化方法与类型系统:通过形式化验证(如SPARK注解生成、定理证明器)和类型系统引导生成(如类型约束解码),确保代码的可证明正确性;高级程序分析:结合自动化测试与修复(如CCTEST框架)、静态分析增强(减少误报)、因果分析与内部状态分析,提升代码可解释性与可靠性。结论:强调LLMs代码生成的未来在于将编程