My real gripe with C is that it was designed to be insecure ON PURPOSE, and many people in the OSS world hold the religious view that this is a good thing.<p>C&#x27;s primary design goal that overrode everything else was easy implementation. In order to keep a dumb compiler, the preprocessor was used instead of a proper module system. For the same reasons, the standard library is full of non-reentrant functions relying on global state, unbounded string manipulation functions or bounded string functions with ambiguous off-by-one properties, vaguely defined data types and so on.<p>If there&#x27;s one reason to do away with C, is to do away with all the stubborn programmers who clutch their copy of K&amp;R and think everything must be done in the &quot;C way&quot;. To paraphrase Linus&#x27; on C: you&#x27;d want to avoid C just to avoid this type of C programmers. They could be amazing coders, but not if you care about security (and you should).