logoalt Hacker News

Zig 0.16.0 Release Notes

104 pointsby ska80today at 3:46 PM16 commentsview on HN

Comments

mihaelmtoday at 5:08 PM

Obviously, I/O as an interface is the headliner here, but there are lots of other goodies to pay attention to, such as the "juicy main".

Small integers auto coercing into floats is a nice gift to game devs. It's nice that game dev is acknowledged as one of the niches Zig can target as I believe it could really thrive there due to how easily it can integrate with C & C++. Or, rather, more easily than the alternatives.

xeubietoday at 5:00 PM

What a banger of a release. The new `Io` interface was a huge breaking change for my project, but I made the transition. Zig seems to be pulling the same trick it pulled with allocators: just make it an explicit value that you pass around. Explicit allocators felt obviously right in retrospect, and so far this feels obviously right too.

show 1 reply
sionisrecurtoday at 4:34 PM

The "Juicy Main" looks like a very nice QoL feature. Gets rid of all the boilerplate for allocators and argv.

show 2 replies
nesarkvechneptoday at 7:13 PM

Nice! I'm sad to see SegmentedList go. Also, I'm wondering if it's possible to use `recvmsg` and `sendmsg` backed by the new `Io` interface.

_bohmtoday at 4:57 PM

I've been waiting eagerly for this release ever since the new Io interface was announced. Pumped to start working on some new projects with this!

Love this line from the release notes:

> Lo! Lest one learn a lone release lesson, let proclaim: "cancelation" should seriously only be spelt thusly (single "l"). Let not evil, godless liars lead afoul.

slopinthebagtoday at 7:06 PM

Have they said how many breaking changes requiring a rewrite Zig will be going through before it stabilises?

Also I thought Zig doesn't have interfaces....how does the IO one work?

show 2 replies