在对 Rust 的治理失去信任后重返 Zig
从 Zig 到 Rust 再到 Zig 2026-06-10 · 9 分钟 · #计算 Zig 的受欢迎程度正在上升。尽管它尚未占据 Rust 或 Go 所占据的空间,更不用说 C 了,但它已经被一些主要项目和无数小项目采纳。因此,它正成为未来重要的编程语言。经过几年的对 Zig 的兴趣,我决定回头看看这门语言,看看我对它今天的感觉。 我为什么喜欢 Zig 我是在 2020 年由一位编程导师第一次接触到 Zig 的。他们对这门小语言充满热情,支持编译时代码执行,具有美丽而简单的抽象形式。我也决定去了解一下。当时,我还在深入学习 C。我喜欢对计算机的控制,但对过时的抽象和糟糕的工具感到沮丧。Zig 虽然新且不稳定,却被承诺可以替代 C。这让我很感兴趣。为什么要学习 C,而不学习下一个语言呢?我观看了 Andrew Kelley 更多的演讲。《软件应该是完美的》对我影响深远。它塑造了我对编程语言以及软件整体应该是什么样的看法。在那次演讲中,Andrew 强调了可犯错、显式内存分配的重要性,没有隐藏的控制流,以及通用的可重用性。这些都是我开始在任何编程语言中寻找的价值观。因此我转向了 Zig。我编写了玩具编程语言,实验了文学编程工具,并玩弄了 Web 服务器。我喜欢使用 Zig。它比 C 感觉更好,但又没有那些陷阱。 离开 Rust Zig 一直在破坏我的代码。我对这种变动感到厌倦。我是一名学生,没有太多时间来保持我的代码更新以适应语言的最新版本。在 anyzig 使在同一系统上处理多个 Zig 版本变得简单之前,我常常在特定项目间隔几个月才工作。当我回来的时候,我必须进行重大更改,而这些我并不理解,以使它们重新运行。Zig 的生态系统也不成熟。作为一个新程序员,我没有技能来独立实现所有东西。可用的库很少,示例也很少来教我。标准库一直在变化。每当我认为我理解它的抽象如何工作时,它们又会改变。默认文档不稳定,这也没有帮助。因此,我转向 Rust。此时,Rust 已经稳定多年,背后有强大的生态系统。学习它是一种痛苦——我想放弃好几次——但一旦我学会了,它就能很好地运作。这对我来说是无价的。一种快速、低级的编程语言,带有我所需要的表达能力,而没有不稳定所带来的成本。它还迫使我开发了一种精神内存模型,这对我在使用检查较少的语言时是有帮助的。由于代码没有出现崩溃,我能够编写可重用的代码,而没有隐藏的控制流或垃圾回收器。尽管它隐藏了内存分配,并使与 C 的工作变得困难,但它几乎让我回到了 Zig 吸引我的原因。我喜欢 Rust。我至今仍然享受在其中工作。抽象带给我快乐。不幸的是,我对项目实际走向的某些方向感到担忧。 我为什么要回归 Rust 仍然不是完美的。尽管它提供了我在编程语言中寻找的许多东西,但对于我想要制作的可重用程序来说,它并不是最理想的。外部函数接口(FFI)很困难。交叉编译令人恼火。隐藏的、不可犯错的内存分配让我感到困扰。被限制于 LLVM,它将需要很长时间,甚至永远,才能支持与 C 一样多的平台。此外,其治理方式仍然让我不快。它有几个巨型企业基金会成员,这几乎肯定会影响 Rust 的开发方式。当世界上最大的一些公司每年都给你几十万美元时,你可能不想惹恼他们。尽管如此,在 vibecoding 的灾难席卷开源社区之前,我愿意接受这些。令我恐惧的是,许多软件项目开始接受 LLM 生成的代码。我原以为开发者对 LLM 不感冒。我以为只有那些被雇主强迫使用它们的人才会用。当这种情况下,维护者和用户都开始撰写或要求 LLN 政策时,Zig 完全禁止它们出现在项目中。与此同时,Rust 则慢慢行动。他们进行了民意调查,社区的普遍情绪是反 LLM,但他们还没有准备好制定正式政策。当他们终于提出提案时,其中包括臭名昭著的审核政策:该 PR 中没有评论可以提到以下主题: LLM 的长期社会或经济影响 LLM 的环境影响 与 LLM 输出的版权状态有关的任何内容 对使用 LLM 的人的道德判断 这在遭到反对声后被删除,但这一切的发生让我对 Rust 项目失去信任。我热爱这门语言,但感到沮丧。
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡