第20章 程序语言与可验证性
第19章讨论了如何组织代码库,才能持续支撑高质量的智能体委托。本章把视角进一步下沉到编程语言,集中讨论语言的选择和使用方式如何影响智能体生成代码的可验证性。第3章已经说明,大语言模型主要依据训练中学习到的模式和当前上下文生成结果。当任务符合常见模式、约束表达清楚并且反馈机制充分时,智能体通常更容易给出可用的实现;一旦涉及项目特有的业务规则,或者需要在未明确说明的约束之间作出权衡,产生隐蔽偏差的风险就会增加。从编程语言的角度看,不同语言的类型系统、语义规则和工具链能够提供不同强度的约束与反馈,进而影响代码是否容易审查、验证和追溯,但语言本身并不能直接保证代码正确,也不能取代测试、评审和责任机制。本章从两种不同的模块性出发,讨论语言为什么能够成为落实责任边界的媒介,程序理解(Program Comprehension)这一历史悠久的研究领域可以提供哪些启示,可强制执行的受限子集为什么具有工程价值,并进一步展望代码作为人机沟通媒介的地位将如何演变。
读完本章,读者应能理解,在智能体编码时代,语言选择仍然需要考虑业务需求、技术生态和团队能力,同时也会影响验证成本与治理能力。合理选择语言特性、工具链和使用规范,有助于组织在代码产出规模持续扩大的同时,保持对系统行为的理解、验证和责任追溯能力。