я бы сказал, что предназначение си было в том, чтобы писать простые (и надежные) кирпичики, из которых потом на чем-то другом писать полезные программы. Но с надежностью все было плохо в смысле оно надежно только настолько, насколько хватило внимательности и ума разработчика. Но у большинства альтернатив были проблемы с накладными расходами (пусть даже не времени исполнения, а запуска). А у других альтернатив с надежностью все на самом деле было не лучше (плюсы блин). Но вот сейчас есть раст, который умеет в компайлтайме проверить значительное количество потенциальных проблем, которые разработчик проморгал. А в рантайм все эти проверки не перетекают, поэтому производительность остается неплохой.