Vercel 发布新语言 Zero:代码的读者,从人变成了 AI 智能体
5 月 15 日,Vercel Labs 的 Chris Tate 发布实验性系统编程语言 Zero。它的前提很干脆:编译器输出的主要阅读者,不再是人类,而是 AI 智能体。三个月内项目已迭代至 v0.3.4,GitHub Star 数超 5200。
5 月 15 日,Vercel Labs 的 Chris Tate 发布实验性系统编程语言 Zero。它的前提很干脆:编译器输出的主要阅读者,不再是人类,而是 AI 智能体。三个月内项目已迭代至 v0.3.4,GitHub Star 数超 5200。
传统编译器在报错时,是在跟人类说话:人读、人想、人修。Zero 的每一处输出,都在跟智能体说话:结构完整、语义稳定、机器可以直接消费。
这是整个设计的原点。
在 Zero 里,单一 zero 二进制的每个子命令都支持统一的 --json 标志。错误不再是一段需要人猜的自然语言,而是携带 NAM003 这样的稳定代码,以及 declare-missing-symbol 这样的类型化修复元数据。
错误信息写给开发者,修复靠人脑判断。
副作用藏在文档里,靠自觉遵守。
输出格式随版本漂移,机器难以稳定消费。
错误携带稳定代码与类型化修复元数据。
副作用由 World 能力参数强制,编译器保证。
所有子命令统一 --json,机器可直接解析。
上例为命令行行为示意。zero fix 的机器可读修复计划,是 Zero「为智能体设计」最直接的一处体现。
如果说 --json 是改良,v0.3.0 就是一次彻底的重构。这一版本将图优先创作设为常规工作流:二进制 zero.graph 存储成为编译器的输入,.0 文件被降级为「供人类阅读的投影」。
智能体通过 zero query 读取、zero patch 修改。补丁受图哈希保护,过期或无效的编辑会在写入存储之前失败——不是靠约定,而是编译器边界上的一道硬闸。
语言的"正本",从给人看的文本,变成了给机器算的图。
采用行语法,仍是传统文本优先形态。
规范化的 .0 文本被提升为原生源码载体。
编译器边界彻底拒绝源码投影输入,图优先成为常规工作流。
大型程序的 zero import 速度提升约 12 倍,降低迁移成本。
官方标记为实验阶段,建议隔离环境运行。
对存量文本优先的包,官方流程是先 zero import 导入图中,再通过 zero export 与 zero verify-projection 完成人工审查和 CI 漂移检查。
把输出交给机器读,只是第一步。Zero 真正硬核的,是下面三个机制。
任何与外部世界交互的函数,都必须接受一个 World 能力参数,由编译器强制执行。
fn main(w: World)只看函数签名,就知道代码能否访问网络、文件系统或标准输出。
zero fix --plan --json 返回结构化方案,智能体可以接受、编辑或拒绝。
zero fix --plan --json而不是盲目应用一个模型猜测的补丁。
错误携带 NAM003 等稳定代码与类型化修复元数据。
error: NAM003机器不需要解析自然语言,就能定位缺失符号并推断修法。
三张卡分别对应「权限可验证、修复可协商、错误可结构化」——每一项都在把调试从艺术变成协议。
代码的读者从人变成 AI,开发者社区立刻分成两派。质疑的声音很直接,反驳的论点也很尖锐。
"没劲。它唯一的新东西就是能力机制,而他们对此并没有解释。"
"这样的错误消息已经存在几十年了,对人类开发者而言并不新鲜。"
"关注的核心不是开发者,而是智能体。不能因为对人类不新鲜,就不去做让 AI 也能使用的东西。"
"智能体最擅长的语言,将会是预训练数据中出现最多的语言。"
"Svelte 等项目的重大 API 变更说明,训练数据的重要性可能被高估。"
以上观点整理自技术社区的公开讨论,按立场归类呈现,不代表本平台立场。
Zero 自称"系统语言",那它跟 Zig、Rust、Go 有什么血缘关系?答案藏在体积与运行时之间。
在二进制体积和显式分配上,它更接近 Zig 而非 Rust;它没有 Rust 借用检查器的成熟度与生态,也放弃了 Go 的绿色线程与较大运行时——换来的,是体积小巧、零外部依赖的构建产物。
| 维度 | Zero | Zig | Rust | Go |
|---|---|---|---|---|
| 二进制体积 | 小(16.2 KiB) | 小 | 中 | 较大 |
| 内存管理 | 显式分配 | 显式分配 | 借用检查 | GC |
| 运行时 | 零外部依赖 | 无运行时 | 无运行时 | 绿色线程 + 较大运行时 |
| 生态成熟度 | 实验期 | 成长中 | 成熟 | 成熟 |
表格依据公开发布信息做定性对比,重点看列之间的量级关系,非精确基准测试。
当编译器输出、错误消息、源码格式的主要消费者从人变成智能体,编程语言的设计优先级将被整体重写:人类可读让位于机器可验证,文档约定让位于编译器强制。Zero 的答案未必是终局,但它把这个问题正式摆上了台面——而这个问题,所有语言都绕不开。
Zero 已开源 · Apache 2.0 许可
前往 GitHub 搜索 Vercel Labs 的 Zero 项目,即可获取源码、入门指南与语言参考。
GitHub 获取 →⚠️ 实验期项目:请放入隔离工作区评估,勿用于生产或敏感数据。