AI 编程时代为什么选择 Scheme?
Goeteia 项目用这篇文章论证:AI 写代码的瓶颈不是代码品味,而是信任——模型最擅长生成受约束的结构,最弱的是保证运行时语义,而 Scheme 的同形结构正好把这两块对齐。 具体四点:1)同形性让生成即解析,s-expr 生成出来就是已解析树,语法校验几乎免费,宏让模型只写意图、编译器展开实现;2)generate-verify 循环是真正的胜算——用 write/equal? 做差分测试、用不变量/固定点做自动 oracle、用 read/write round-trip 做免费属性测试,模型必须"证明"而非"声称"正确;3)前端 UI 也是数据:HTML 和 CSS 都是 s-expr,配色值、抽象、DRY 全是普通列表操作,页面本身由 site/why.ss 编译渲染,"site 就是论点的演示";4)网络层里把协议变成可验证数据:两端同语言、用 s-expr 直接传输,无协议即无协议 bug;面对异构后端生成声明式 schema 并测试 decode(encode x)=x;已上线的 Igropyr 服务器就吃 s-expression 载荷。 最后作者给了诚实的反方:模型对 JS 的训练数据多得多、直觉召回强,Scheme 必须靠上述验证脚手架弥补;Goeteia 的 (web js) FFI 桥可以调用任何 npm 库,不必离开 JS 生态。 整体有清晰立场、有工程细节、有"自己的站点即证明"的一手经验,但论证偏产品/项目背书,结论对 LLM 编程范式的判断仍可争论。