Go-flavored concurrency in C

2026-07-13


Hi! Long time no see. Hope you are doing well.

I'm Anton. I work on open source and write interactive technical guides.

You're receiving this email because you subscribed to my updates at antonz.org/subscribe. If you'd like to unsubscribe, use the link at the bottom of this email.

I've been wondering lately: Can you match the state-of-the-art Go concurrency model using POSIX threads? The obvious answer is no — not without a user-space scheduler. But what exactly is the difference, and how can you narrow the gap? Here's my take:

Go-flavored concurrency in C

On a related note, I ported Go's io and bytes/strings packages to C, and these ports are much closer to the originals than the concurrency one.

If you're wondering why I'm doing this weird stuff, it's for Solod, the programming language I've been working on since early 2026. It's a system-level language with Go syntax, zero runtime, and a Go-like stdlib. Two releases are already out, supporting core Go features and a few platforms.

That's all for now. See you in the next episode!

Anton


Don't miss what's next. Subscribe to Anton Zhiyanov: