Hacker News new | ask | show | jobs
by quic5 1375 days ago
I can only speak for myself here but of all languages I've tried for WASM-4 (WAT, C, Rust & Zig) it is the most productive one for me.

I really enjoy the balance of safety and control in Zig. I can build using Debug mode during development, turning nearly all my bugs into crashes which are easily fixable using in-browser source-level debugging. But in Release-Small mode the result is fast and more importantly really small since there's a 64kb cartridge limit.

Another factor is the Zig Standard Library which designed to be portable and usable on freestanding targets. I can not emphasize enough how pleasant this is. For example I can just use a `std.heap.FixedBufferAllocator` to back a `std.ArrayList` with no problem.

The comptime feature of Zig also comes in handy when you have to minimize code size.

The seamless C interop furthermore improves my productivity since I can just use any C code I like. I've used a C perlin noise library in a previous game for example, saving me a lot of time.

Plus I've used Zig for the previous WASM-4 jam and just liked it so I didn't bother trying any other language.