Bun刚把Zig重写成Rust,这个团队却用487天反向重写
就在 Bun 团队宣布用 AI 花 11 天将 50 万行 Zig 代码重写为 Rust 之后,Roc 编译器团队发表了一篇方向截然相反的硬核复盘:他们耗时 487 天,以纯人工方式将 30 万行的 Rust 编译器从零重写为了 Zig。重写的核心动机并非语言优劣,而是为了彻底解决一个因架构设计导致的底层 Bug。在重新选择语言时,团队因构建速度、细粒度的内存控制、更贴合编译器生态的库,以及 Zig 对密集“不安全代码(Unsafe)”的更好兜底,最终放弃了原有的 Rust。实测数据揭示了一个反直觉的结论:丢掉 Rust 借用检查器后,Zig 版编译器的内存损坏 Bug 数量不增反降,且增量编译速度飙升至惊人的 35 毫秒。文章强调,在真实的软件工程中,没有绝对完美的语言,只有与特定架构约束、生态假设(如全局分配器 vs 显式 Arena)最契合的务实选择。