0.10.0 Release Notes

本月最大的事情就是 0.10 版本发布了,主要功能就是 self-hosted compiler,也称为『自举』,即可以用 Zig 来写 Zig 编译器,自举之所以对于一门语言如此重要,主要在于,这说明了该语言可以处理足够复杂的系统,不再只是玩具而已。编译的提升:

  • Wall Clock Time: 43 seconds to 40 seconds (7% faster)
  • Peak RSS: 9.6 GiB to 2.8 GiB (3.5x less memory used)

赶紧升级吧,少年!

zigcc 中文社区微信群

欢迎喜欢 Zig 的小伙伴加入! {{< figure src=“https://github.com/zigcc/.github/raw/main/weixin.jpg” width=“200” title=“ZigCC 微信群二维码” >}}

观点/教程

const Animal = union(enum){
   cat: Cat,
   dog: Dog,
   snake: Snake,

   pub fn talk(self: Animal) void {
      switch (self) {
         .snake => std.debug.print("Ssss~~~", .{}),
         inline else => |case| case.talk(),
      }
   }
};
  • My hopes and dreams for ‘zig test’。作者对 zig test 一些不满意的地方,这里面有个词比较有意思:paper-cuts,中文直接翻译就是“被纸张划的伤痕”,在软件领域特指:影响用户体验的小缺陷,虽然不严重,但是比较烦人。
paper-cuts

项目/工具

Zig 语言更新