开发日志 ⚠️ Zig 编程语言

这是 Zig 主分支的近期更改列表页面,包含以下内容:

  • RSS 订阅:可获取RSS 订阅
  • 2024 年条目:其他年份可在Devlog 存档页面查看。
  • 2024 年 12 月 25 日

    • 自我引用全局值:解决了长期存在的编译器错误issue #131,允许编写自引用代码,如包含自身指针的结构体,此问题需对编译器进行非平凡扩展,导致编译器的差异较大,现在在 Zig master上可用,有使用需求可尝试。
  • 2024 年 11 月 19 日

    • Zig 引导移植进展zig-bootstrap项目可在几乎任何目标上生成 Zig 编译器,作者努力使 zig-bootstrap 在尽可能多的支持的交叉编译目标三元组上工作,目前支持的目标三元组列表如下:

      • aarch64-linux-(gnu,musl)
      • aarch64-macos-none
      • aarch64-windows-gnu
      • aarch64_be-linux-(gnu,musl)
      • arm[eb]-linux-(gnu,musl)eabi[hf]
      • loongarch64-linux-(gnu,gnusf,musl)
      • mips[el]-linux-(gnu,musl)eabi[hf]
      • mips64[el]-linux-(gnu,musl)abi(64,n32)
      • powerpc-linux-(gnu,musl)eabi[hf]
      • powerpc64-linux-musl
      • powerpc64le-linux-(gnu,musl)
      • riscv(32,64)-linux-(gnu,musl)
      • s390x-linux-(gnu,musl)
      • thumb[eb]-linux-musleabi[hf]
      • thumb-windows-gnu
      • x86-linux-(gnu,musl)
      • x86-windows-gnu
      • x86_64-linux-(gnu,musl)[x32]
      • x86_64-macos-none
      • x86_64-windows-gnu,最新列表可在此处找到[https://github.com/ziglang/zi...],若在不常见目标上运行 Zig 可尝试 zig-bootstrap,遇到构建问题在zig-bootstrap仓库报告,运行构建的编译器问题在ziglang/zig报告。
  • 2024 年 11 月 04 日

    • 命名整数的惊人效果:作者 Andrew Kelley 的 Zig 代码开始这样写,通过命名整数避免错误,给 Zig 的类型系统机会捕捉错误,在运行时排查这种错误非常烦人且耗时,但在编译时因类型不匹配得到错误很容易解决。
  • 2024 年 11 月 01 日

    • 删除匿名结构体类型:Zig 不再有“匿名结构体类型”,之前写.{.x = 123 }会给值一个“匿名结构体”类型,可基于结构进行强制转换,现在写.{.x = 123 }会给一个“普通”结构体类型,不允许神奇的强制转换,上述代码示例现在会报错。
  • 2024 年 10 月 29 日

    • 为 kqueue 实现文件监控:作者 Andrew Kelley 在飞机上完成了#20599,在 macOS、FreeBSD、OpenBSD、NetBSD、DragonFlyBSD 和 Haiku 上可使用zig build --watch功能,此功能可跟踪所有文件系统输入,自动重复无效的构建步骤,在基于终端的工作流中重构代码库时很方便,KQueue 可在打开的目录句柄上设置监控,但事件不指示更改文件的名称,Zig 构建系统无此问题。
  • 2024 年 10 月 06 日

    • 为增量编译添加 CI 覆盖率:作者 Matthew Lugg 和 Jakub 努力实现增量编译,现在 CI 测试套件包括“增量编译”测试,目前测试集较小,随着修复错误和最终进行模糊测试将快速增长,可在这里找到所有增量编译测试用例,在 Linux x86_64 上使用zig build -fincremental --watch命令可尝试增量编译,但会遇到很多错误,需谨慎使用。
  • 2024 年 9 月 30 日

    • 新的 Devlog 结构:Devlog 切换到每年预分片结构以避免页面无限增长,RSS 订阅链接未改变,缓存的旧条目链接可能失效,新条目有正确链接,若要为个人博客设置类似结构可查看[https://github.com/kristoff-i...]。
  • 2024 年 9 月 16 日

    • 作者 Andrew Kelley 一直在将 stb_truetype.h 移植到 Zig ,展示了代码片段的优化。
阅读 11
0 条评论