Zig monthly, October 2021
Games, gamedev, Elixir, tools & more
Wow! So much has happened over the last month in Zig that it’s been downright overwhelming, let’s dive right in!
Digital Scavenger (game)
As he writes on Twitter:
Full feature showcase of my current gamedev project. Most of the stuff started to come into reality in the last week and everything is still just a prototype.
It’s built with Zig, OpenGL ES 2.0 and a lot of love, also uses Box2D.
I highly encourage checking out his other work.
Cross-platform Elixir applications using Zig
I’m thrilled to open source work we’ve done to support building cross-platform Elixir applications!
We’re using this code in production to distribute command-line applications to on-premise customer environments, without an installed Erlang runtime.
It is accompanied by an excellent talk at ElixirConf 2021 which you can watch here.
EDIT: Updated to clarify the project is by @doawoo (Quinn: “I just want to make sure to credit @doawoo for Burrito. I was involved, but it’s really their project.")
He recently left a highly paid position at AMD to work on his own indie game written in Zig. As a first step to build a full game he has created an open-source project called zig-gamedev. This project contains growing collection of sample applications, libraries and other tools for game developers using Zig. The goal of the project is to build necessary technology, share knowledge, help others and promote the language. He works on it full-time, so please consider supporting Michal on GitHub.
I build game development stuff in Zig full-time. If you like my work and my mission to promote the language, please consider supporting me. I will create more sample applications, libraries and complete mini-games. I have game development knowledge and experience and I want to share it with others by writing open-source software in Zig.
Ryan Liptak shared an excellent article on improving fuzz testing using the AFL fuzzer with Zig allocators.
Zig snapshots debugger
@kubkon, the Zig core team member working on the Zig linker, announced zig-snapshots - an interactive debugging tool allowing you to preview snapshots of Zig’s incremental linker progression between subsequent incremental updates:
Zig self-hosted compiler progress
Andrew Kelley is sharing regular progress updates on the Zig self-hosted compiler, which is a major milestone for Zig:
Zig self-hosted compiler progress report:
- 140,331 lines of code
- Behavior Test Suite:
- LLVM backend: 365/1057 (35%) passing
- C backend: 42/1057 (4%) passing
- arm and x86 backends: work in progress towards the first passing test case
Zig self-hosted https://twitter.com/andy_kelley/status/1448869273431011330
This one from yours truly. I’ve announced mach-glfw: Ziggified GLFW bindings with 100% API coverage, zero-fuss installation, cross compilation, and more as well as a Vulkan example to go along with it. This one small step towards my vision for Mach engine.
Using Zig and translate-c to understand weird C code
Over on zig.news, Sobeston has published a very interesting article walking through how they use Zig’s translate-c functionality (which converts C code to Zig code) to understand what a strange C code snippet is doing. Very much worth the read.
Andrew Kelley on the Sourcegraph podcast
Recently I got the opportunity to join Andrew Kelley on the Sourcegraph podcast through my dayjob (I work at Sourcegraph), it’s a high-level chat around why Andrew built Zig, the challenges in doing so, how programmers can get funding for their side projects and hobbies, the differences between Zig and C, and why and how Zig can be faster than both C and Rust. Check it out on YouTube below or read it here.
Sat November 6th: Zig SHOWTIME!
We’re just a few days away from the next Zig SHOWTIME episode. Join live by going to https://zig.show for more info, or subscribe to the Zig SHOWTIME calendar (iCal) to have all episodes automatically added to your calendar.
Nov 11-12th: Handmade Seattle conference!
Whether you join remotely or in-person, Handmade Seattle, the Independent Systems Programming Conference is here!
Several members of the Zig community are joining both online, and in person (myself included). The conference will also feature talks by Andrew Kelley,
Andrew Kelley and others in the Zig community will also be giving talks and demos, so you won’t want to miss it!
Zigmonthly recently surpassed 300+ subscribers and 7k+ viewers, and this is just the third article! Thanks so much for reading and being a part of this!
If you like my work, you can sponsor me on GitHub