Почему до сих пор не появился более быстрый и "лучший" язык, чем C?

Почему до сих пор не появился более быстрый и "лучший" язык, чем C?
Почему до сих пор не появился более быстрый и "лучший" язык, чем C? - danarshavit @ Unsplash

Со всеми новыми "современными" языками сегодня, как так получилось, что язык C по-прежнему считается самым быстрым и "близким к машине"? Я не очень верю в то, что есть только один правильный способ делать вещи, а язык C существует уже очень давно (с 60-х годов!). Неужели мы не придумали ничего лучше, чем то, что было написано почти 50 лет назад?

Я знаю, что современные языки являются более высокоуровневыми и решают определенные задачи, такие как сборка мусора и распределение памяти, используют библиотеки и тому подобное. Я просто спрашиваю, почему до сих пор не было истинного второго варианта Си.

Может ли быть так, что C настолько совершенен, что никакой другой способ управления компьютером невозможен (не считая принятия разработчиками)?

EDIT Послушайте, я не пытаюсь осудить C или любой другой ваш любимый язык. Мне интересно, почему C стал стандартом и почему другие альтернативы так и не появились, а C был просто "принят".

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

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

Именно здесь на помощь приходит C++. C++ может быть таким же быстрым, как C. Дело в том, что C++ - гораздо более сложный язык, а значит, он определенно повышает производительность; при условии, что люди знают, как его использовать. C++ и C уже не являются почти одним и тем же языком.

Теперь D был еще одним шагом вперед. Те же возможности для быстрого кода, опциональная сборка мусора и т.д., но он так и не прижился. Надеюсь, это изменится, потому что это отменяет то, что является проблемой для C++: обратную совместимость с C.

Поэтому, отвечая на ваш вопрос, "лучше" - это трудно оценить. С точки зрения простоты и скорости, C, вероятно, близок к лучшему, что мы могли бы сделать. С точки зрения соотношения производительности и простоты, C++, вероятно, лучшее, что мы могли бы сделать, хотя это мнение гораздо более различно. И, наконец, с точки зрения полноценного и очищенного языка, при скорости и простоте C, D выигрывает в этом контексте.


LetsCodeIt, 17 мая 2023 г., 21:57