Open source maintainer at https://github.com/nalgeon. Author & educator at https://antonz.org
Anton Zhiyanov
Loading...
If you stare into Go's stdlib long enough, you start seeing things.
Dark things. Things you weren't meant to see.
Like this function that uses variables named φ and β.
In today's crazy world, writing C is the only sane thing to do.
P.S. You don't need AI; you have AI in netdb.h.
Solod (a subset of Go that translates to C) now has an online playground!
I guess that means it's a real language now 😁
codapi.org/so
The "io" package is a core part of Go's standard library. Porting it to C was an interesting challenge.
I had to figure out how to handle slices, multiple return values, errors, and interfaces in C. But in the end, it worked out pretty well!
antonz.org/porting-go-io
Could Go be a better C? I think so!
Meet Solod — a strict subset of Go that translates to C, without hidden memory allocations and with source-level interop.
antonz.org/solod
Working on something crazy these days — using Go to write regular C code. Wish me luck :)
How to implement "defer" keyword in C (allows to free memory and other resources correctly): implementations with C23/GCC, C11/GCC, GCC/Clang... - Blog Post by Anton Zhiyanov @antonz.org #Programming antonz.org/defer-in-c/
What makes modern systems languages stand out? Many things — but allocators are a big one.
Let's explore how Rust, Zig, Odin, C3, and Hare design their allocators, and then build one in C!
antonz.org/allocators