Bun 用 Rust 重写这事,论坛里已经聊过性能了。但我在 OpenResty 和 Nginx 模块上踩坑多年,觉得这事的重点不在"比谁快"。
Zig 换 Rust,更像项目从"个人秀"转向"多人协作"的成年礼。C/C++ 扩展生态的毛病,搞过 Nginx 的都懂:ABI 不兼容、内存泄漏、段错误,新手提 PR 跟考古一样。Rust 的所有权模型和 crate 生态把"模块边界"和"API 契约"摆上台面,逼开发者先画清接口。这降的是长期维护成本。
JS 工具链这几年为抢首发和 benchmark,可维护性债务欠了不少。Bun 这次重写不是还债,是给开源社区重新画地图。如果运行时能被拆成一组可复用 crate,Bun 或许会成为第一个"乐高化"的 JS 运行时——贡献者不再需要读懂整个代码库才敢动手。
Rust 当然有门槛,但清晰规则的门槛,和混乱代码的门槛,不是一回事。项目到了规模,"好不好参与"往往比"快不快"更能决定生死。
你更愿意给哪种项目贡献代码:接口清楚但语法严格,还是跑起来飞快但处处是坑?