[1]: https://willcrichton.net/notes/type-safe-printf/
[2]: https://hackage.haskell.org/package/formatting
Zig does it the right way - it's defined in zig itself, no special cases in compiler like in Rust.