After returning to Zig following several years away, the writer describes building smallnet networking library snurl, a typing-race TUI, and an n-body simulator with stellar evolution. An early setback was discovering Zig’s advertised built-in fuzzer was not yet functional. A visit to Zig Day Seattle provided an opportunity to work on snurl with another programmer, discuss projects with local developers, and briefly speak with Zig creator Andrew Kelley. The meetup’s collaborative, locally organized format left a strong impression and made the community feel connected.
The writer’s enthusiasm centers on Zig’s explicit allocator and I/O parameters, which clarify where memory is allocated and external effects occur while making testing easier. Other strengths include comptime, a flexible build system, a preference for few dependencies, straightforward error propagation, and exceptionally fast incremental compilation on supported Linux and macOS systems. Comparisons with Rust emphasize Zig’s simpler allocation model, smaller dependency footprint, and faster edit-build workflow, while acknowledging Rust’s advantage in stability. The main desired improvements are a more stable standard library and better compiler support for catching lifetime mistakes, especially returning stack-allocated data that can become invalid. Zig’s ongoing breaking changes remain a reason to choose Rust for projects that require a settled language, but the writer sees Zig’s current advantages as compelling for other work.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.