&gt;&gt; <i>This is the only part of the Jai philosophy I struggle to understand. How is an explicit delete keyword better than deterministic destruction? From my perspective, the former method reintroduces the problem the latter method solves.</i><p>My interpretation of statements like &quot;problems game programmer&#x27;s don&#x27;t have&quot; is that they don&#x27;t mean game programmers don&#x27;t run into situations where things like RAII or polymorphism would be useful, just that the stereotypical game programmer doesn&#x27;t care about using them because they have their own ways to get the same results. Which often involves programming practices that aren&#x27;t considered safe for most other application domains.<p>The thing with &#x27;game programmers&#x27; when referring to people like Jonathan Blow and e.g. Casey Muratori (who does Handmade Hero), is that they have been writing the same kinds of systems for so long, and have developed so much &#x27;muscle memory&#x27; to avoid the pitfalls of their coding style, that they appear to have gotten a blind spot for all the deficiencies in the code they write. It works, it&#x27;s efficient, and someone with the same mindset could make progress on it despite of the minefields they&#x27;ve created, but it&#x27;s usually not &#x27;good code&#x27;. The Handmade Hero code for example is atrocious if you ask me.<p>It never ceases to amaze me how people who are so smart, much smarter than myself, fail to acknowledge all the ways in which they could write better code without throwing out any of the goals they&#x27;ve set for themselves (performance, compilation speed, predictability, ...). All things considered, it does not surprise me that so many games ship in a half-broken state.