Bun发布Zig转Rust移植指南,重写计划尚未确定

JavaScript运行时Bun的创始人Jarred Sumner在GitHub上发布了一份Zig转Rust的移植指南,引发外界对Bun可能放弃Zig语言的猜测。Sumner表示目前尚未承诺完整重写,仅处于探索阶段。Bun此前已分叉Zig并声称将调试编译速度提升四倍,但相关改进因Zig的"禁止AI贡献"政策无法合并回主线。Sumner预测开源软件未来将更多依赖AI,甚至可能走向"禁止人工提交代码"的方向。

Bun的创始人Jarred Sumner近日在GitHub上发布了一份Zig转Rust的移植指南,引发外界猜测该项目可能正准备放弃Zig语言。不过Sumner本人表示,目前并没有正式承诺进行重写,他只是"想看看一个可运行的版本会是什么样子、用起来什么感觉、性能如何"。

Bun是一款JavaScript运行时与工具套件,也是Zig语言最具代表性的使用者之一。Zig是由Andrew Kelley设计的通用系统编程语言,定位是对C语言的改良,目前版本为0.16。使用Zig构建是Bun区别于竞争对手的显著特点——Node.js使用C++,Deno使用Rust。

值得注意的是,Bun团队此前已经对Zig进行了分叉,声称通过在macOS和Linux上使用LLVM并行代码生成,调试编译时间提升了四倍。然而,这些改进无法回流至Zig主线,原因在于Zig对issue、PR及Bug追踪评论实施了严格的禁止AI政策。Zig软件基金会成员Loris Cro解释称,禁令的原因是"基于大语言模型的贡献对我们来说弊大于利,从充斥着幻觉内容的无价值PR带来的背景噪音增加,到首次提交就长达一万行的离谱PR,不一而足"。

关于Bun对Zig的分叉,一位Zig核心团队成员表示"该分叉版本中的改动不适合合并至上游",并列举了多项理由,包括"他们的并行语义分析实现会产生非确定性行为",以及将LLVM后端输出拆分为多个模块的另一项改进被认为是浪费时间,Zig团队正专注于增量编译技术,"该技术可将编译速度提升数个数量级"。

Zig的禁止AI政策对Anthropic而言也颇为尴尬——Anthropic于2025年底收购了Bun,并将其用于Claude Code项目。

此外,Zig的另一个隐患是,Kelley对语言进行破坏性变更毫无顾虑,这使得大型生产项目难以将其作为可靠依赖。

Sumner在GitHub提交的移植指南中说明,"A阶段"的目标是迁移核心逻辑,即使Rust代码暂时无法编译也没关系,"B阶段则是逐个crate地让代码编译通过"。

尽管如此,Sumner在Hacker News上表示:"我们并未承诺要进行重写。这些代码很可能会被完全丢弃。我只是想看看一个可运行的版本会是什么样子。"

尽管从Zig迁移到Rust的想法令社区颇感意外,但总体反响还算正面。有Bun用户评论称,"把产品建立在一门仍处于测试阶段的语言上,本来就有点冒险。"Bun以速度快、灵活性强著称,但也长期饱受严重Bug和内存泄漏问题的困扰。

有一点是确定的:如果Bun真的推进移植,AI将在实现过程中发挥重要作用。先例已有——Cloudflare曾借助AI在一周内重新实现了Next.js的大部分API,Ladybird浏览器项目也在两周内将其JavaScript引擎从C++移植到了Rust。

无论Bun最终是否迁移至Rust,Sumner坚信开源软件将越来越多地借助AI进行开发。针对Zig的AI禁令,他在X平台表示:"我预计开源社区会走向相反的方向:不允许人类贡献代码。"他认为,人们仍会参与问题讨论和优先级排序,"但实际的编写代码、提交PR、回复反馈、落地实现,这些工作将由大语言模型来完成。"

Q&A

Q1:Bun为什么要考虑从Zig迁移到Rust?

A:Bun考虑迁移的原因有几点:首先,Zig仍处于测试阶段,语言本身存在较多破坏性变更,生产项目依赖风险较高;其次,Zig实施了严格的禁止AI政策,导致Bun团队对Zig的优化改进无法合并回主线;此外,Bun长期存在严重Bug和内存泄漏问题,迁移到更成熟的Rust生态或许有助于改善这些情况。不过目前Bun创始人表示尚未正式承诺重写。

Q2:Bun发布的Zig转Rust移植指南具体是怎么操作的?

A:根据Sumner提交的指南,移植分两个阶段进行。A阶段的目标是将核心逻辑迁移过来,即使Rust代码暂时无法编译也可以接受;B阶段则是逐个crate地让代码正式编译通过。整个过程预计将大量借助AI工具来加速实现,类似于Cloudflare和Ladybird此前借助AI完成大规模代码移植的先例。

Q3:Zig的禁止AI政策对Bun和Anthropic有什么影响?

A:Zig禁止在issue、PR和Bug追踪中使用AI生成的内容,这直接导致Bun团队对Zig所做的优化(如并行代码生成带来的四倍编译提速)无法合并回Zig主线。而Anthropic在2025年底收购了Bun,并将其用于Claude Code项目,这使得Zig的禁止AI政策对Anthropic而言尤为尴尬,也在一定程度上加速了Bun探索迁移至Rust的动机。

来源:The Register

0赞

好文章,需要你的鼓励

2026

05/08

10:27

分享

点赞

邮件订阅