标签: 编译器

清除筛选

Gleam 重写编译器:直接产出 AST,编译快两成

Gleam 是一门跑在 Erlang 虚拟机(BEAM)上的静态类型函数式语言,编译器用 Rust 写成。10 月 6 日发布的 v1.19.0 做了一件表面低调、内里伤筋动骨的事:Erlang 代码生成器被完全重写,编译产物从 Erlang 源码换成了 Erlang 抽象形式(abstract forms)。编译速度显著提升,BEAM 崩溃报告和堆栈追踪的…

Mold 3.0:链接器用 Rust 重写后发布首个大版本,目标取代 GNU ld

构建一个大型 C++ 项目时,编译阶段可以摊到几十个核上并行跑,唯独最后一步例外:所有目标文件汇到链接器里,由单个进程解析符号、处理重定位、排出最终的二进制。Firefox 的 debug 构建重新链接一次,GNU ld 要跑 92.865 秒,而这段时间里大多数 CPU 核心处于空闲状态。 10 月 5 日发布的 mold 3.0 把这个环节的耗时压到 0…

Zig 0.17.0 发布:构建系统重构、增量编译落地与 @bitCast 重定义

Zig 在 10 月 2 日发布 0.17.0 版本。这轮更新包含 5 个月的工作量,来自 206 位贡献者的 925 个提交,修复了 329 个 bug 报告。版本号本身也说明了项目所处的阶段:Zig 官方明确表示语言稳定化是通往 1.0 的前置条件,而 0.17.0 在这条路上迈出了实质性的一步——上一个发布周期里,团队讨论并裁决了大约 150 份语言提…