Vigil - A clean, fast build watcher for Zig (inspired by Bacon for Rust)

19 points by Chase


I have been exploring Zig and wanted a project that let me practice concepts from Data Oriented Design, TigerStyle (links in the readme for context on those) and simplified approaches to manual memory management that have intrigued me the last couple of years. I wanted something wildly different to Clojure (my beloved daily driver) and Zig has been a fantastic tool to explore these concepts. I'm a big fan of Bacon (check it out if you use Rust) and wanted to have a similar tool for my Zig projects so here we are. I like to think it's about 80% of Bacon's functionality in only about 20% of the code. It was a really cool moment when I was able to start using Vigil, itself, to help during the rest of it's development.

fanf

Does it delete the source code when the build fails? (heh)

sinclairtarget

I noticed that you've got some comptime assertions enforcing an upper bound on the size of some structs (e.g. Line). I thought that was pretty interesting. Why have an assertion on a compile-time property like that? Just to be extra explicit about the upper bound?