Zig, the Small Language
I tried Zig recently but I found the unsilenceable lints to be a huge productivity killer. I actually posted a link to the GitHub issue this morning. <a href="https://news.ycombinator.com/item?id=32751317" rel="nofollow">https://news.ycombinator.com/item?id=32751317</a><p>This makes a normal workflow with `watchexec zig test` basically impossible, since before I can even run the tests I have to spend time hunting down which variables are used/unused at the moment and (un)commenting them. And it seems like they're planning to double down on this by making you adjust even more trivial things like public/private and var/const before it will even compile your code. <a href="https://github.com/ziglang/zig/issues/335" rel="nofollow">https://github.com/ziglang/zig/issues/335</a> <a href="https://github.com/ziglang/zig/issues/224" rel="nofollow">https://github.com/ziglang/zig/issues/224</a><p>Maybe I'm a bad developer, but my code is never perfect the first time around. I always spend time experimenting and refining my designs. I want to find a design that works, and only then spend time polishing and prettifying before I git push.<p>I do understand the reasoning (they don't want people committing poor quality code), but this implementation just seems completely backwards to me. It breaks the natural order. It's like saying we won't let you ctrl+s until your tests pass to make sure you don't commit broken code. Stop nannying me and let me get my work done!