5月Bun用AI重写为Rust。6月Google内部的一份技术备忘录流出,建议新建系统级项目优先考虑Rust。7月初,GitHub Octoverse的半年报告显示,Rust在AI生成代码中的占比在过去六个月内暴涨了217%。
这不是Rust推广团队发力的结果。这是AI编程工具在替全行业做语言选择。
AI Agent写什么语言最不容易出错?Rust。因为编译器在AI把代码写出来之前就先拦了一批问题。什么语言最适合AI大规模并行生成?还是Rust。因为所有权系统天然隔离了并发风险,多个Agent同时写不同文件时不容易互相踩脚。
AI编程没有"喜欢"Rust。AI编程是"不得不"选Rust。而当一个工具性的选择变成趋势性的选择,被甩下的语言就会开始慌了。
编译器替你兜底,AI替你写代码
理解AI编程为什么偏爱Rust,要先理解AI写代码最大的痛点:幻觉。
大模型生成代码时偶尔会写出不存在的API、类型不匹配的变量、忘记释放的内存。在Python里这些错误要到运行时才能被捕获。在JavaScript里可能永远不会被捕获,只是默默行为异常。在Zig里,编译器会报错,但Zig的安全检查没有Rust那么严格。
Rust的编译器是AI代码最好的安全网。所有权和借用检查、模式匹配的穷尽性检查、Trait约束——这些在编译期强制执行的规则,相当于给AI生成的代码做了第一轮自动审查。
Bun的重写数据很说明问题:100万行AI生成的Rust代码,编译通过率高到能让任何一个手动写Rust的开发者嫉妒。不是AI写Rust写得特别好,是Rust的编译器把AI犯的那些典型错误全拦在编译阶段了。AI写错一个类型,编译器直接拒绝,AI被迫重试,直到写对为止。
这就是一个自纠错循环。AI生成 → 编译器检查 → 不通过 → AI重新生成 → 编译器再检查 → 通过。整个过程不需要人类介入。
用Python就没这个福气。AI生成一段可能有隐蔽Bug的代码,Python照单全收,跑起来也不报错,三个月后才在生产环境炸掉。
语言生态的雪崩效应
这个趋势一旦形成,就不是"Rust更好"的问题了。它变成了"不用Rust更危险"的问题。
AI编程工具的流行让每个团队产出的代码量爆炸式增长。代码越多,人工审查的覆盖率越低。人工审查覆盖率越低,越依赖编译器和自动化测试来兜底。越依赖编译器兜底,越应该使用编译器检查最严格的语言。
Rust就是这个逻辑链的终点。
GitHub的数据是冰山一角:2026年上半年,新创建的开源项目中,Rust的占比同比上升了89%。其中标注了"AI-assisted"的项目里,Rust占比更是达到了惊人的31%。
Go社区已经开始感受到压力。Go标榜"简洁",但AI不在乎语言是否简洁,AI只在乎写出来的代码容不容易出错。Go的接口设计灵活,空接口到处飘,AI生成的Go代码经常出现运行时类型断言失败——这种错误在Rust里根本不可能发生。
Zig更惨。Zig上游社区对AI生成代码的零容忍态度,表面上是维护代码质量,实际上是在自断后路。当一个语言的社区主动拒绝AI,而隔壁语言的AI生态正在爆炸式增长时,市场不会等你说完理由。
Go团队的三次闭门会议
据The Information报道,Google内部的Go语言核心团队在过去两个月里至少开了三次闭门会议,主题都是同一个:Go在AI编程时代的定位。
Go的设计哲学是"少即是多"——少的关键词、少的语法糖、少的概念。这个哲学在人工编程时代是优势:新人上手快,团队协作沟通成本低。
但在AI编程时代,"少"变成了"少保护"。Go没有泛型层面的类型约束(虽然1.18版本引入了泛型,但远不如Rust的Trait系统强大),没有所有权检查,没有穷尽匹配。AI生成的Go代码在编译阶段能被拦下的问题,比Rust少一个数量级。
这导致了一个尴尬的局面:用Go的团队如果想大规模采用AI编程,要么接受更高的运行时风险,要么投入更多人力做代码审查。两个选项都在削弱Go在AI时代的竞争力。
有些Go团队已经开始让AI生成代码后,先用一个自动化脚本做一轮静态分析和模糊测试。这个额外的步骤在Rust项目里几乎不需要——编译器自己就做了。
TypeScript也在悄悄转向
不止Go在焦虑。TypeScript社区内部最近出现了一种微妙的声音。
Next.js的母公司Vercel最近在一份技术博客中透露,他们正在探索用Rust重写某些性能敏感的构建工具组件。原因不是Rust更快——这个谁都知道——而是"Rust的编译器能更好地配合AI生成的代码,减少我们的审查负担"。
这句话的信息量很大。TypeScript有静态类型检查,理论上已经比纯JavaScript安全很多。但在AI大规模代码生成的场景下,TypeScript的类型系统还是太"软"了。any类型、类型断言、第三方库的类型定义不完整——这些都是AI代码的漏洞入口。Rust的"不允许妥协"在这时候反而成了优势。
前端的"Rust化"趋势其实已经酝酿了一段时间。SWC用Rust重写了Babel,Turbopack用Rust重写了Webpack,Rspack用Rust做了另一个Webpack替代。这些项目的共同点是什么?它们都是被AI编程工具广泛使用的构建基础设施。AI生成的前端代码最终要经过这些Rust工具链的编译和打包——AI写TypeScript,但AI的"基础设施"在用Rust。
这是一个有趣的隐喻:AI编程的表层还允许语言的多样性,但底层正在被Rust统一。
Python的算盘不一样
在这场AI编程语言洗牌中,Python的位置最特别。
Python在AI代码生成中的绝对量依然是第一,因为它的生态太庞大了:机器学习、数据分析、Web开发、自动化脚本——全栈覆盖,无出其右。
但Python社区对"AI代码安全性"的焦虑正在直线上升。Python的灵活性是AI的福音——AI可以自由地生成各种风格的代码——但也是运行时炸弹。AI给Python写的代码中,有相当比例存在隐蔽的类型错误和资源泄漏。
有趣的是,Python统治AI模型训练,Rust统治AI代码生成。这两件事正在形成一个微妙的闭环:AI模型在Python里被训练出来,然后这个模型更擅长写Rust。Python养虎为患,自己培养的AI选择了"别人"。
Mojo的出现可能是一个变量——它试图在Python语法的基础上引入Rust级别的性能和安全检查。但Mojo目前还不成熟,要真正影响到AI编程工具的选择偏好,至少还需要一到两年。
语言的垄断时代
这件事的终局可能比所有人想象的都更快到来。
AI编程工具的语言偏好会自我强化。Rust被用得越多,AI写Rust的经验越丰富,生成的代码质量越高,吸引力越强,更多项目选Rust,AI获得更多Rust训练数据——正反馈循环一旦建立,其他语言很难翻盘。
这不是说世界上只会剩下Rust一种语言。但"非Rust语言"会逐渐从"主流选择"退化为"特殊场景选择"。Python还会在AI训练和数据分析领域存活,TypeScript在前端,Go在某些云原生场景。但任何一个新项目在启动时,技术选型的第一问会从"什么语言最适合这个需求"变成"什么语言能让AI写出最安全的代码"。
答案将越来越单一。
Zig创始人Andrew Kelley愤怒地谴责Bun用AI写Rust代码是"背叛"。但Kelley没意识到的是,他的愤怒本身就说明了问题:当一个语言的社区领袖开始用道德判断来回应技术趋势,这个语言就已经在战场上输了。
AI编程不讲道德,不讲情怀,它只看数据。数据说Rust编译通过率最高、运行时崩溃率最低——这就是AI的答案。你可以不喜欢这个答案,但你的不喜欢改变不了下一个项目用Rust的事实。
编程语言的世界曾经是百花齐放。AI编程正在把花圃变成麦田。高效、安全、统一。也更单调。
热门跟贴