Why would you jump through all these hoops instead of just writing C++ if you want "C with generics"
Because for many of the use cases where C is used, switching to C++ involves jumping through even more hoops.
Why would you write C++ if you can get the same result by jumping through a few hoops with C?
because i work on a legacy project that is coupled to safety regulations and other quality guarantees, and we cannot just simply roll out a solution ported to c++ on the next release, or even tenth, so perhaps we make it work until we can.
however we can set a standard and expectation for new projects to use c++, and we do and set an expectation to target a specific std.
i see this sentiment quite a lot on hackernews -- feels like a lot of people saying "git gud" -- i would expect a lot more nuance applied here.