标签
一篇博客文章讨论了依赖 GitHub 等集中式托管平台的脆弱性,探讨了分叉(forking)和供应商化(vendoring)作为缓解策略,并质疑谁应该为可靠的源代码可用性买单。
文章讨论了 Zig 的 std.Io.Threaded,这是 Zig Io 接口的一种实现,使用阻塞系统调用并通过信号支持取消,同时对比了并发与并行。
文章讨论了最近通过 Fil-C 提出的 Zig 内存安全方案,比较了 Fil-C 与 Rust 对内存安全的定义,并主张内存安全是一个具有实用定义的频谱,同时使用了一个 Fil-C 仍然不安全的具体示例。
一位开发者用 Zig 编写了一个轻量级的基于 GTK4 的 ssh-askpass 工具,以避免在其加固的 Gentoo 系统上引入 X11 或 KDE 依赖,并使用了手写的 GTK4 绑定。
一篇开发日志,解释了用于创建健壮的 POSIX 守护进程的 double-fork 技术,涵盖了在 Zig 中构建 zmx 时的 fork、会话和控制终端。
一篇博客文章揭示了 Zig 的 std.Io.Writer.Allocating 中存在的内存过度分配错误,原因是 `drain` 函数在每个数据切片上错误地预留了 splat 参数的空间,导致内存意外增长。
一篇博客文章介绍了如何使用Zig和QBE编译器后端构建一个过度设计的计算器,该计算器可以将算术表达式编译为原生机器代码,并展示了词法分析、解析和代码生成的过程。
Manganin 是一个用 Zig 编写的新 Git 伪造,它通过基于信任的担保树和自托管设计重新构想了源代码管理,从而避免了供应商锁定。
Richard Feldman 通过对比不同编程语言网站和游戏的依赖图,指出大部分依赖选择是文化规范而非技术必要性。
Isaac Van Doren 回顾了他在密苏里州哥伦比亚市举办的 "Software Should Work" 大会的意外成功,提到了高度投入的观众、积极的氛围,以及对 Zig 开发的直接影响——Andrew Kelley 为受 Fil-C 启发的编译模式开启了一个 issue。
Ziggity是一个受lazygit启发的用Zig编写的Git终端UI。它提供键盘驱动的界面,用于暂存、提交、分支、变基和检查历史。
本文讨论了一个基本的内存安全挑战,涉及带标签的联合体,其中指向一个变体的指针在联合体被覆盖为另一个变体后被使用,导致类型混淆。作者还认为,缓冲区溢出是最容易被利用的内存错误,如果采用更好的数组语法本可以缓解。
本文介绍了如何通过关注内存布局和数据导向设计来设计高性能解析器,并以用Zig编写的Yuku JavaScript/TypeScript解析器为例。
本文批评了Anthropic关于AI将取代软件工程的说法,讨论了围绕Bun从Zig重写为Rust的争议,并赞扬了Zig创始人Andrew Kelley对该迁移理由的直接回应。