开发日志 ⚡ Zig 编程语言

这是关于 Zig 语言的开发日志页面,包含了多个重要更新和相关信息:

  • 2025 年 7 月 23 日

    • 新的 Aarch64 后端:Jacob 上游了新的后端,通过zig build-exe hello.zig -fno-llvm -OReleaseSmall -target aarch64-linux测试对比,新后端在代码生成速度上比 x86 后端显著更快,二进制大小增加约 330KB(2%),在机器码质量方面虽早期但很有前景。
  • 2025 年 6 月 30 日

    • Zig 路线图 2026:安排了新的 Zig SHOWTIME 节目,7 月 2 日与 Andrew 谈论 Zig 2026 路线图,更多信息可查看https://zig.show/episodes/41/
  • 2025 年 6 月 14 日

    • 并行自托管代码生成:在 Linux 和 macOS 的 Debug 构建中默认启用 x86_64 后端,且进一步并行化编译器管道,使自托管后端的机器码生成能与其他任务并行,对于 Zig 项目编译速度有 5%至 50%的提升,如构建 Zig 编译器本身时间从 75 秒降至 20 秒以下,简单“Hello World”构建时间缩短 30%,但仍有提升空间,如改进自托管链接器、提高机器码质量等,且增量编译接近默认开启。
  • 2025 年 6 月 8 日

    • 自托管 x86 后端在调试模式下成为默认:针对 x86_64 目标,默认使用 Zig 自己的 x86 后端,而非 LLVM,默认未在 Windows 上更改,x86 后端通过更多行为测试,在实现 Zig 语言方面比 LLVM 后端更稳健,编译速度大幅提升,如zig build-exe hello.zig -fllvm耗时 918ms,而zig build-exe hello.zig仅 275ms,对于像 Zig 编译器本身这样的大型项目,时间从 75 秒降至 20 秒,未来还有更多优化工作,如完全并行化代码生成、使增量编译稳定等,可从下载页面获取最新 master 分支构建尝试。
  • 2025 年 6 月 6 日

    • 介绍 Zig 构建系统视频:Loris Cro 在 YouTube 上发布新视频,展示如何开始使用 Zig 构建系统,后续将添加更多视频覆盖构建系统的其他方面,视频地址为https://youtu.be/jy7w_7JZYyw
  • 2025 年 5 月 20 日

    • FreeBSD 和 NetBSD 交叉编译支持:合并了#23835#23913拉取请求,使用zig cczig build可从任何机器构建针对 FreeBSD 14.0.0+和 NetBSD 10.1+的二进制文件,基于策略,为不同目标构建相关库并提取符号信息,目前导入最新 FreeBSD/NetBSD 的crt0代码并手动应用补丁,还随 Zig 编译器附带 FreeBSD/NetBSD 系统和 libc 头文件,欢迎用户报告问题并参与其他 BSD 支持的工作。
  • 2025 年 4 月 9 日

    • 网站更新到 Zine 0.10.0:官方 Zig 网站现在使用独立的 Zine 构建,代码重写较多,如有网站回归问题可打开 issue,这是 Zine 从 Zig 构建脚本转变为独立可执行文件的重要里程碑,对感兴趣的人是尝试 Zine 的好时机,运行zine init可获取示例网站和开发日志。
  • 2025 年 3 月 3 日

    • 发布标签状态更新:0.14.0 版本即将发布,尚未完成发布说明,明天早上将创建标签并启动 CI,同时继续完成发布说明,还有许多重要增强功能已就绪,将在明天发布。
  • 2025 年 2 月 24 日

    • 改进的 UBSan 错误消息:在与 C 互操作时,Zig 的 UBSan 错误消息得到改进,现在能提供更有用的错误信息,如显示错误位置等,虽仍有一些 LLVM 的 UBSan 运行时支持功能未实现,但此更新大大方便了调试 undefined 行为。
  • 2025 年 2 月 7 日

    • 无 libc 的 Zig 现在性能超过 glibc 的 Zig:重新设计调试分配器,使其可在运行时检测页面大小,不再依赖特定的页面大小,性能显著提升,在测试中如 degenerate ast-check 任务,调试编译器下性能提升约 10%,在真实世界的 Zig 编译器构建中,无 libc 的 Zig 性能也超过 glibc 的 Zig,这是 Zig 项目发展的关键节点,标志着语言和标准库优于 C 和 libc。
  • 2025 年 1 月 24 日

    • 用于 Zig 的 LLDB 分支:Jacob 致力于为 Zig 提供良好的调试支持,包括 LLDB 分支的增强,主要用于 Zig 的自托管后端,随着自托管 x86_64 后端在 0.14.0 版本中更易用,创建了wiki 页面指导构建和使用该分支。
阅读 56
0 条评论