Вдогонку, ещё есть "managed" языки типа Java или C#. Там писать так просто "опасный" код не получится, но наковнокодить умеючи запросто можно. И утечку памяти при наличии garbage collector устроить тоже можно. Только вот сам "рантайм" того же C# внутри весь ппц какой "безопасный", боюсь голый C не самый плохой выбор в опытных руках: простой компилятор имеет минимальное количество собственных ошибок, все подводные камни известны были 20 лет назад, как и способы борьбы с ними.