撰写于 2024
  • 202411

    2024-12-09 在 月刊

    观点/教程 Why am I writing a JavaScript toolchain in Zig? JAM 作者写的一篇文章,分析里市面上现有的 JS 工具链(bundler、formatter、linter 等),虽然已经很好用,但是不够快。下面是他举的几个例子: Lossless, cache efficient syntax trees,现在通用的 JS 语法树表示是 ESTree,尽管设计上很简洁,但在遍历时不够高效,需要有遍历多次 才能得到有用信息(eslint 里就有四 …

    更多

  • 202410 | 向 Zig 软件基金会认捐 30 万美元

    2024-10-26 在 月刊

    重大事件 向 Zig 软件基金会认捐 30 万美元 Mitchell 在其最新的博客上宣布:我和我的妻子向 Zig 软件基金会 (ZSF) 捐赠了 300,000 美元。 两年内每年分期支付15万美元。第一期已经转账。 我从 2019 年的某个时候开始关注 Zig 项目。 我在 2021 年公开分享了我对该项目的兴奋之情。 同年晚些时候,我开始使用 Zig,到 2022 年初,我开始撰写关于 Zig 的文章,并为编译器做出贡献。 2023 年,我公开分享了用 Zig …

    更多

  • 202407 | Zig 成为最热门的编程语言

    2024-07-05 在 月刊

    重大事件 在这篇文章里,作者引用 Stackoverflow 2024 年的调查报告,指出 Zig 语言是最热门的编程语言之一,并且 Zig 开发者的薪水都很高,平均年收入为75,332美元! Zig 受欢迎程度 Zig 薪水对比 尽管使用 Zig 语言的开发者仅占调查人数的 1%,但上升趋势明显。Zig 语言的倡导者、自由和开放源码软件开发者 Ali Cheragi 说: Zig 的魅力在于它的简洁性、现代设计以及在底层控制和运行时安全性之间取得的平衡。 Zig 开发者的一些观点: …

    更多

  • 202406 | 0.13 来了

    2024-07-01 在 月刊

    重大事件 2024-06-07,0.13.0 发布,历时不足 2 个月,有 73 位贡献者,一共进行了 415 次提交! 这是一个相对较短的发布周期,主要原因是工具链升级,例如升级到 LLVM 18。 一个比较大的 Breaking changes 是 ComptimeStringMap 被重命名为了 StaticStringMap , 使用方式也发生了变化,更多细节可参考:#19682 1 const map = …

    更多

  • 202405

    2024-06-02 在 月刊

    观点/教程 Thoughts on Zig 又一篇 Zig 初学者的使用体验文档,如果你也在犹豫要不要学 Zig,这是个不错的经验参考。 I'm sold on Zig's simplicity : r/Zig 一个具有资深经验开发者,在这里描述了自己选择业余项目语言的经历: Rust 越来越复杂,有种发展成 C++ 的趋势 C++ 新版本的特性(比如 module)LSP 支持的不够好,而且历史包袱严重 C 缺少元编程,并且没有命名空间 最后从 Andrew …

    更多

  • 202404 | Zig 0.12.0 正式释出

    2024-04-18 在 月刊

    重大事件 千呼万唤的 0.12.0 版本终于 2024-04-20 正式释出了!这次版本历时 8 个月,有 268 位贡献者,一共进行了 3688 次提交!社区内的一些讨论:Hacker News、Lobsters。 这是它的 Release notes。ZigCC 对这个文档进行了翻译、整理,方便大家阅读: 0.12.0 升级指南 0.12.0 版本说明 并且还在 2024-04-27 举行了一次线上的 meetup 来庆祝这次发布,这是会议的总结:0.12.0 Release Party …

    更多

  • 202403 | ziglang.cc 正式上线

    2024-03-13 在 月刊

    重大事件 https://ziglang.cc/ 之前 ZigCC 所有项目都是托管在 GitHub 之上,网页基于 Pages 构建,域名自然也就是 github.io 的,虽然 GitHub 提供了很多利于开发者的服务,但过于依赖 GitHub 这种商业公司,还是不利于 ZigCC 的长远发展,域名是其中很重要一个,有了独立域名,网页托管选择就多了,比如 Cloudflare Pages。 另一个大家比较关心的问题就是 0.12 的发版,虽然 milestone 显示还剩 10 …

    更多

  • 202402 | Zig 2024 Roadmap 新鲜出炉

    2024-03-04 在 月刊

    重大事件 Andrew 最近在 zigshow 节目中介绍了 Zig 2024 年的规划,主要有以下几点: 0.12 版本会尽快发布 编译时间现在太慢,进而导致修 bug 的时间长,因此 core team 会优先解决这个编译时间问题。在这个看板中,有相应的进度,主要是:Ditch LLVM、Incremental Compilation 这两个。 很多人都对 Ditch LLVM 这个事情嗤之以鼻,认为这是不自量力,这个 issue 的讨论也比较多,已经有近 200 条回复, …

    更多

撰写于 2023
  • 202311 | 传值或传引用,这是个大问题

    2023-11-19 在 月刊

    重大事件 本月讨论比较多的就是 Zig May Pass Anything By Reference 这篇文章了。 它讲述了 Zig 里面一个比较有争议的点,函数的参数到底是传值还是传引用。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 const AAAA = struct { foo: [100]u32, }; fn aaaaa(a: AAAA, b: *AAAA) void { b.*.foo[0] = 5; …

    更多

  • 202310

    2023-10-13 在 月刊

    重大事件 观点/教程 Notes From the Field: Learning Zig Zig 初学者的使用经验分享 Friendly Neighbor: A network service for Linux wake-on-demand, written in Zig 作者在这篇文章中分享了 用 Zig 重写之前 Ruby 写的一个网络工具,一方面是减轻资源消耗,另一方面是探索用“低级”语言来写程序。不错的案例分享。 Zig Interfaces 作者介绍了 Zig 中如何实现接口这个 …

    更多