C’s Biggest Mistake (2009)
I don&#x27;t think it is a mistake in language design. In the 90s, memory was a rare good, and it still is in the microprocessor world, where &quot;only&quot; a few kilobytes of RAM are available. There are performance critical paths where passing a size_t is just unnecessary.<p>The actual mistake is to don&#x27;t pass size_t as a user. This is one kind of &quot;premature optimization&quot;. We can safely say the language design doesn&#x27;t encourage the user to write safe code, and succeror languages do that.<p>Don&#x27;t get me wrong — I just try to do the point that C itself is not the point to blame. It&#x27;s people using computers who write the million dollar bugs.