This is silly. Rust could not achieve its performance and safety goals without macros and generics. Generics may have been optional for Go (I don&#x27;t agree, but let&#x27;s go with it), but <i>there is no way to achieve zero-cost memory safety without generics</i> (while supporting first-class references and dynamic allocation).<p>Rust generics are deliberately less expressive than C++ templates, in that they&#x27;re strongly typed. That&#x27;s why we get so many complaints from C++ and D developers that you can&#x27;t do certain things. But Rust sticks with its strongly-typed generics, because Rust has always tried hard to strike a balance between code expressivity and maintainability.<p>This is a terrible example if you want to prove that point, anyway. This 6502 assembler is obviously a total abuse of the system, and nobody will deploy it to production. It&#x27;s a neat hack, and that&#x27;s all. Nobody would use an obfuscated quine written in Go to argue that Go is unreadable. This is exactly analogous.<p>Finally, Diesel is just an ORM. It uses exactly enough features to be an ORM; the only &quot;problem&quot; with it is that it&#x27;s an ORM.