大家好,我是何三,独立开发者
Vercel 不好好搞 Next.js,跑去写了一门编程语言。
还是用 C 写的。
还是给 AI Agent 用的。
6 天,4000 多个 Star。这个叫 Zerolang 的项目,我看完第一反应是——Vercel 这帮人是不是闲得慌?
然后仔细看了看,发现事情没那么简单。

这东西到底是什么?
Zerolang 是一门全新的编程语言。但它的目标用户不是人类,是 AI Agent。
对,你没看错。Vercel 在造一门「Agent 原生」的语言——从语法设计、编译检查、标准库,全都在为 AI 服务。
说白了,以前我们教 Agent 写 Python、写 JavaScript,就像让一个美国人学中文——语言本身不是为它设计的,它得适应我们。Zerolang 反过来了:语言为你设计,你来用就行。
讲个好玩的事。我第一眼看到这个项目,脑子里蹦出来的是几年前「学 Rust 还是学 Go」的争论——你学了半天,结果现在告诉我有门语言是给 AI 学的,不是给人学的?

核心设计理念
Zerolang 的设计哲学就一句话:规则大于花活。
六个关键词:
- 小表面积——语法规则少,没有各种奇怪的语法糖。Agent 边干活边学都来得及。
- 标准库优先——能内置 API 解决的,绝不让你去 npm/pip 翻包。
- 可检查性——编译器的诊断信息、调用图、大小报告,全都可以以结构化数据输出,Agent 可以直接啃。
- 确定性修复——编译报错了,不只是给你看红字,还能输出修复方案。
- 显式副作用——外部访问、失败处理、资源消耗,全摆在明面上。
- 不兼容旧版本——找到更好的方案就直接改,不背历史包袱。
看到第三条我愣了一下——编译错误信息以结构化数据输出?意味着 Agent 还能自己读错误报告、自己修代码。闭环了属于是。
这个 Zerolang,怎么说呢,就是……就是那种看了让人觉得自己学这么多年编程白学了的玩意儿。
上手体验
装起来很简单,一行命令:
curl -fsSL https://zerolang.ai/install.sh | bash
装完试试写一个 Hello World:
fun answer() -> i32 {
return 40 + 2
}
pub fun main(world: World) -> Void raises {
if answer() == 42 {
check world.out.write("math works\n")
}
}
语法看着有点眼熟?C 和 Rust 的混血感。fun 声明函数,pub 控制可见性,raises 标注可能抛错,check 关键字处理错误。
然后跑个编译检查:
$ zero check examples/hello.0
hello.0:1:4 PAR100: expected '{' before block
explain: zero explain PAR100
看到最后一行了吗?explain: zero explain PAR100——这是给 Agent 看的。Agent 收到这条信息可以直接调 zero explain 获取详细解释和修复建议。
说实话,这块我也没完全搞懂为什么用 check 而不是传统的 try-catch——为什么这么设计?别问我,问 Vercel 去。
它的真正野心
Zerolang 官网写得很直白:「这是一门实验性语言,当前的语法和 API 不是最终版。」
所以别想着现在拿去写生产代码。
但它的方向很有意思:当 Agent 成为主要用户,语言应该长什么样?
今天的 AI 编程(Claude Code、Cursor、GitHub Copilot)本质上还是人在指挥 AI 写代码。Zerolang 在赌一个未来——Agent 自主写代码、自己编译、自己修 bug、自己部署。
类似的项目还有去年火了一阵的 Winglang(给云应用设计的语言),以及 Pkl(Apple 出的配置语言)。但 Zerolang 是第一个明确把 Agent 当成一等公民的。
GitHub 地址
https://github.com/vercel-labs/zerolang
星涨得飞快,想凑热闹的可以去看一眼。不过官网也说了:「安全漏洞是可以预期的,请在隔离环境中运行。」
这句话翻译成人话就是——别在生产环境用,炸了概不负责。
本文使用 MGO 编辑并发布
关注“何三笔记”,回复“mgo” 免费下载使用