One day, I might use the Zig tooling to translate my C sources to Zig sources and continue development in Zig from that point forwards.
For example, Zig introduces a robust error handling mechanism (try, catch, return err) that eliminates the need for exceptions or manual error checking via return codes (if (ret < 0)).
Also, Zig includes its own build system (zig build) and package management. This removes the need for external tools like make, cmake, or third-party dependency managers. Everything is integrated and works cross-platform out of the box.
You wondered why getting rid of macros was a good idea...
Zig allows compile-time function execution (CTFE) as a core language feature. This replaces the need for macros in many cases. While C macros are powerful, they are also error-prone and hard to debug. Zig's comptime feature allows you to write functions that run during compilation, offering the same benefits but with stronger type safety and clearer error messages.