Things Zig comptime won't do
Es el disco de Odín. Tiene un solo lado. En la tierra no hay otra cosa que tenga un solo lado.
matklad's Arts&Crafts
Visit matklad.github.io → RSS feedOn Hacker News Jul 2019 – Oct 2026
Software Engineering 40Systems & Performance 11Tools & Productivity 10Programming Languages 10Web & Frontend 4Math & Algorithms 3
Es el disco de Odín. Tiene un solo lado. En la tierra no hay otra cosa que tenga un solo lado.
I've recently read an article criticizing Rust, and, while it made a bunch of good points, I didn't enjoy it --- it was an easy to argue with piece. In general, I feel that I can't recommend an article criticizing Rust. This is a shame --- confronting drawbacks is important, and debunking low effort/miss informed…
There are two main historical trends when choosing an implementation language for something compiler-shaped.
This post will be a bit all over the place. Several months ago, I wrote Hard Mode Rust, exploring an allocation-conscious style of programming. In the ensuing discussion, @jamii name-dropped TigerBeetle, a reliable, distributed, fast, and small database written in Zig in a similar style, and, well, I now find myself…
It's a bit of a silly post, because syntax is the least interesting detail about the language, but, still, I can't stop thinking how Zig gets this detail just right for the class of curly-braced languages, and, well, now you'll have to think about that too.
In Rust in 2023, @nrc floated an idea of a Rust compiler rewrite. As my hobby is writing Rust compiler frontends (1, 2), I have some (but not very many) thoughts here! The post consists of two parts, covering organizational and technical aspects.
People complain about Rust syntax. I think that most of the time when people think they have an issue with Rust's syntax, they actually object to Rust's semantics. In this slightly whimsical post, I'll try to disentangle the two.
In my last post about Zig and Rust, I mentioned that Rust is a scalable language. Let me expand on this a bit.
A short post about a neat little Zig idiom. Consider your average {sum type, variant, tagged union, enum, alt}:
This post is a case study of writing a Rust application using only minimal, artificially constrained API (eg, no dynamic memory allocation). It assumes a fair bit of familiarity with the language.