⚙️ 编程语言 · 技术发布

Vercel 发布新语言 Zero:代码的读者,从人变成了 AI 智能体

5 月 15 日,Vercel Labs 的 Chris Tate 发布实验性系统编程语言 Zero。它的前提很干脆:编译器输出的主要阅读者,不再是人类,而是 AI 智能体。三个月内项目已迭代至 v0.3.4,GitHub Star 数超 5200。

来源:公开报道 2026-08 事件 2026-05-15 全文约 3 分钟读完
#Vercel #Zero语言 #AI智能体 #开源
<1 ms Hello World 构建时间
16.2 KiB Hello World 二进制体积
5200+ GitHub Star · 当前 v0.3.4

⚡ TLDR · 30 秒速览

  • 是什么:Vercel Labs 的实验性系统语言,设计前提是——编译输出的主要读者是 AI 智能体,不是人。
  • 快在哪:Hello World 一毫秒内构建、体积仅 16.2 KiB,Apache 2.0 开源,可编译为三大桌面平台原生二进制。
  • 怎么服务智能体:统一 --json 输出、稳定错误码(NAM003)、机器可读修复计划(zero fix --plan --json)。
  • 最大的转折:v0.3.0 起图优先成为常规——zero.graph 才是编译器输入,.0 文件只是给人看的投影。
  • 诚实状态:实验期项目,预计破坏性变更,官方建议只在隔离工作区中运行。

01Zero 和传统语言,差在哪?

传统编译器在报错时,是在跟人类说话:人读、人想、人修。Zero 的每一处输出,都在跟智能体说话:结构完整、语义稳定、机器可以直接消费。

这是整个设计的原点。

在 Zero 里,单一 zero 二进制的每个子命令都支持统一的 --json 标志。错误不再是一段需要人猜的自然语言,而是携带 NAM003 这样的稳定代码,以及 declare-missing-symbol 这样的类型化修复元数据。

.0 文件扩展名 Apache 2.0 许可 Linux / macOS / Windows

传统工具链

错误信息写给开发者,修复靠人脑判断。

副作用藏在文档里,靠自觉遵守。

输出格式随版本漂移,机器难以稳定消费。

Zero 工具链

错误携带稳定代码与类型化修复元数据。

副作用由 World 能力参数强制,编译器保证。

所有子命令统一 --json,机器可直接解析。

# 智能体拿到的不是"一段报错",而是一份修复计划
$ zero fix --plan --json
# → 机器可读的结构化方案:可接受、可编辑、可拒绝

上例为命令行行为示意。zero fix 的机器可读修复计划,是 Zero「为智能体设计」最直接的一处体现。

02v0.3.0:源代码不再是"源码"

如果说 --json 是改良,v0.3.0 就是一次彻底的重构。这一版本将图优先创作设为常规工作流:二进制 zero.graph 存储成为编译器的输入,.0 文件被降级为「供人类阅读的投影」。

智能体通过 zero query 读取、zero patch 修改。补丁受图哈希保护,过期或无效的编辑会在写入存储之前失败——不是靠约定,而是编译器边界上的一道硬闸。

语言的"正本",从给人看的文本,变成了给机器算的图。

v0.1.4起点

采用行语法,仍是传统文本优先形态。

v0.2.0过渡

规范化的 .0 文本被提升为原生源码载体。

v0.3.0转折

编译器边界彻底拒绝源码投影输入,图优先成为常规工作流。

v0.3.2提速

大型程序的 zero import 速度提升约 12 倍,降低迁移成本。

v0.3.4当前

官方标记为实验阶段,建议隔离环境运行。

对存量文本优先的包,官方流程是先 zero import 导入图中,再通过 zero export 与 zero verify-projection 完成人工审查和 CI 漂移检查。

03它为智能体准备了哪三件事?

把输出交给机器读,只是第一步。Zero 真正硬核的,是下面三个机制。

🌍

World 能力参数

任何与外部世界交互的函数,都必须接受一个 World 能力参数,由编译器强制执行。

fn main(w: World)

只看函数签名,就知道代码能否访问网络、文件系统或标准输出。

🔧

机器可读修复计划

zero fix --plan --json 返回结构化方案,智能体可以接受、编辑或拒绝。

zero fix --plan --json

而不是盲目应用一个模型猜测的补丁。

🧩

稳定错误协议

错误携带 NAM003 等稳定代码与类型化修复元数据。

error: NAM003

机器不需要解析自然语言,就能定位缺失符号并推断修法。

三张卡分别对应「权限可验证、修复可协商、错误可结构化」——每一项都在把调试从艺术变成协议。

04社区怎么看?一边泼冷水,一边说到了点子上

代码的读者从人变成 AI,开发者社区立刻分成两派。质疑的声音很直接,反驳的论点也很尖锐。

质疑

"没劲。它唯一的新东西就是能力机制,而他们对此并没有解释。"

质疑

"这样的错误消息已经存在几十年了,对人类开发者而言并不新鲜。"

反驳

"关注的核心不是开发者,而是智能体。不能因为对人类不新鲜,就不去做让 AI 也能使用的东西。"

质疑

"智能体最擅长的语言,将会是预训练数据中出现最多的语言。"

反驳

"Svelte 等项目的重大 API 变更说明,训练数据的重要性可能被高估。"

以上观点整理自技术社区的公开讨论,按立场归类呈现,不代表本平台立场。

05它在语言谱系中的位置

Zero 自称"系统语言",那它跟 Zig、Rust、Go 有什么血缘关系?答案藏在体积与运行时之间。

二进制体积显式分配上,它更接近 Zig 而非 Rust;它没有 Rust 借用检查器的成熟度与生态,也放弃了 Go 的绿色线程与较大运行时——换来的,是体积小巧、零外部依赖的构建产物。

维度ZeroZigRustGo
二进制体积小(16.2 KiB)较大
内存管理显式分配显式分配借用检查GC
运行时零外部依赖无运行时无运行时绿色线程 + 较大运行时
生态成熟度实验期成长中成熟成熟

表格依据公开发布信息做定性对比,重点看列之间的量级关系,非精确基准测试。

⚠️ 官方明确警告:Zero 仍处实验阶段,预计会出现破坏性变更,应在隔离工作区中运行,而不是用于生产系统或处理敏感数据。
编辑核心判断

当编译器输出、错误消息、源码格式的主要消费者从人变成智能体,编程语言的设计优先级将被整体重写:人类可读让位于机器可验证,文档约定让位于编译器强制。Zero 的答案未必是终局,但它把这个问题正式摆上了台面——而这个问题,所有语言都绕不开。

现在就能拿到

Zero 已开源 · Apache 2.0 许可

前往 GitHub 搜索 Vercel Labs 的 Zero 项目,即可获取源码、入门指南与语言参考。

GitHub 获取

⚠️ 实验期项目:请放入隔离工作区评估,勿用于生产或敏感数据。