Yeah, let&#x27;s use copy &amp; paste and C preprocessor macros as our abstraction tools ...<p>Avoiding unnecessary abstractions is important but at the same time those abstractions were invented for a reason. Basically the Go vs generics debate, except even more rudimentary. It&#x27;s fine if your code doesn&#x27;t need those abstractions, it sucks badly if it does (eg. gobject)