Язык C - может ли умереть в обозримом?
От: Shmj Ниоткуда  
Дата: 21.01.22 08:39
Оценка: :)
Такой вопрос.

По рейтингу ЯП — C практически всегда #1. Ну да, за счет мух какой-нибудь Python или JS чисто технически может временно сместить на 2 место, но суть не меняется — по прежнему его нечем заменить.

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

Можно ли быть уверенным, что через 50 лет, скажем, он по прежнему будет востребован и ничем его не заменят? Или же новые процессоры, новые архитектуры и постепенно может быть вытеснен чем-то более совершенным. Ну как Rust что-то там пытался заменить собой C++, так и для C что-то попытаются сделать + автоматическая трансляция уже существующих прог в новый язык. Или не возможно?
Re: Язык C - может ли умереть в обозримом?
От: Vzhyk2  
Дата: 21.01.22 08:51
Оценка: +2 :)
S>По рейтингу ЯП — C практически всегда #1. Ну да, за счет мух какой-нибудь Python или JS чисто технически может временно сместить на 2 место, но суть не меняется — по прежнему его нечем заменить.
Нет, его нечем заменить. Есть куча бредовых смузихлебных поделий с большой рекламой, но реальной замены так и не появилось. D в теории мог бы, но он помер в младенчестве.

S>Можно ли быть уверенным, что через 50 лет, скажем, он по прежнему будет востребован и ничем его не заменят? Или же новые процессоры, новые архитектуры и постепенно может быть вытеснен чем-то более совершенным. Ну как Rust что-то там пытался заменить собой C++, так и для C что-то попытаются сделать + автоматическая трансляция уже существующих прог в новый язык. Или не возможно?

И С++ тоже на очень долго еще. Но если появятся и займут рынок новые архитектуры компов, то может и будут замененя С и С++.
Re: Язык C - может ли умереть в обозримом?
От: Muxa  
Дата: 21.01.22 08:52
Оценка: +2
S>Можно ли быть уверенным, что через 50 лет, скажем, он по прежнему будет востребован?
Нет.
Как и быть уверенным в обратном.
Re: Язык C - может ли умереть в обозримом?
От: lpd Черногория  
Дата: 21.01.22 08:54
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Можно ли быть уверенным, что через 50 лет, скажем, он по прежнему будет востребован и ничем его не заменят? Или же новые процессоры, новые архитектуры и постепенно может быть вытеснен чем-то более совершенным. Ну как Rust что-то там пытался заменить собой C++, так и для C что-то попытаются сделать + автоматическая трансляция уже существующих прог в новый язык. Или не возможно?


Основное на C — ядро Linux, в котором слишком много драйверов устройств, чтобы его так просто заменить. Сейчас туда добавляют поддержку драйверов на Rust (но лично я надеюсь что массовым Rust не станет).
У сложных вещей обычно есть и хорошие, и плохие аспекты.
Берегите Родину, мать вашу. (ДДТ)
Re: Язык C - может ли умереть в обозримом?
От: vsb Казахстан  
Дата: 21.01.22 08:57
Оценка: :))) :))) :))
Не знаю, где он там популярен. По сути С уже давно умер.
Re[2]: Язык C - может ли умереть в обозримом?
От: Shmj Ниоткуда  
Дата: 21.01.22 09:21
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Не знаю, где он там популярен. По сути С уже давно умер.


В параллельной реальности, где зарплаты начинаются от $120 тыс. в год.
Re: Язык C - может ли умереть в обозримом?
От: Pzz Россия https://github.com/alexpevzner
Дата: 21.01.22 09:49
Оценка: +2
Здравствуйте, Shmj, Вы писали:

S>Можно ли быть уверенным, что через 50 лет, скажем, он по прежнему будет востребован и ничем его не заменят? Или же новые процессоры, новые архитектуры и постепенно может быть вытеснен чем-то более совершенным. Ну как Rust что-то там пытался заменить собой C++, так и для C что-то попытаются сделать + автоматическая трансляция уже существующих прог в новый язык. Или не возможно?


50 лет — большой срок. Сравнимый со всей историей ИТ. Кто его знает, что оно там будет, через 50 лет?

С другой стороны, какие у тебя шансы, что через 50 лет ты все еще будешь жив и заинтересован в языках программирования? Я бы так далеко не планировал.
Re: Язык C - может ли умереть в обозримом?
От: ArtDenis Россия  
Дата: 21.01.22 10:07
Оценка:
Си не умрёт потому, что ничего такого-же простого и переносимого ещё не придумали. Всё что создавалось на замену си было сложным. Обычно те, кто пишут на сях не могут понять и выучить что-то более сложное (для них си и так довольно сложный и сильно высокоуровневый). Думаю, лет 20-30 он ещё точно будет жить.
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re: Язык C - может ли умереть в обозримом?
От: 4058  
Дата: 21.01.22 11:06
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Можно ли быть уверенным, что через 50 лет, скажем, он по прежнему будет востребован и ничем его не заменят?


C — это по сути портируемый ассемблер, следовательно в своей сфере применения (как и ассемблер) будет существовать, пока эта сфера существует. Просто не совсем понятно зачем его заменять, за почти 50 лет на нём накоплена огромная кодовая база, и у человека занимающегося например системным программированием, он не вызывает дискомфорта в использовании или сложности в освоении.
Re[2]: Язык C - может ли умереть в обозримом?
От: Michael7 Россия  
Дата: 21.01.22 12:06
Оценка:
Здравствуйте, Vzhyk2, Вы писали:

V>Нет, его нечем заменить. Есть куча бредовых смузихлебных поделий с большой рекламой, но реальной замены так и не появилось. D в теории мог бы, но он помер в младенчестве.


D не помер, но после относительного пика популярности в конце нулевых, сейчас редко применяется. Хотя на офсайте даже поддерживается список с историями успеха: компании, где D применяется для разработки https://dlang.org/orgs-using-d.html Впрочем, был бы он действительно популярен такой список не имел бы смысла.

Но может он еще и взлетит.

Что касается C/C++ то хотя бы как legacy эти языки, скорее всего точно, что еще проживут 50 лет. На них уже столько софта написано, что никаких запасов смузи не хватит переписать на Go и Rust.
Re[2]: Язык C - может ли умереть в обозримом?
От: Michael7 Россия  
Дата: 21.01.22 12:14
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Здравствуйте, Shmj, Вы писали:


S>>Можно ли быть уверенным, что через 50 лет, скажем, он по прежнему будет востребован и ничем его не заменят? Или же новые процессоры, новые архитектуры и постепенно может быть вытеснен чем-то более совершенным. Ну как Rust что-то там пытался заменить собой C++, так и для C что-то попытаются сделать + автоматическая трансляция уже существующих прог в новый язык. Или не возможно?


Pzz>50 лет — большой срок. Сравнимый со всей историей ИТ. Кто его знает, что оно там будет, через 50 лет?


С другой стороны, как раз 50 лет назад — эпоха появления и распространения Си и Unix (тесно связанных между собой). Их создателям даже в голову не приходило, что все это будет еще и в 2022-м году популярно. Иначе, как признавались, многое бы по другому спроектировали.
Re: Язык C - может ли умереть в обозримом?
От: cppguard  
Дата: 21.01.22 12:45
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Можно ли быть уверенным, что через 50 лет, скажем, он по прежнему будет востребован и ничем его не заменят? Или же новые процессоры, новые архитектуры и постепенно может быть вытеснен чем-то более совершенным. Ну как Rust что-то там пытался заменить собой C++, так и для C что-то попытаются сделать + автоматическая трансляция уже существующих прог в новый язык. Или не возможно?


Про 50 лет сказать не могу, но подозреваю, что активно будут развиваться инструменты, позволяющие сделать Си более безопасным. Ведь сам язык прост до безобразия, а значит надёжен, и проблемы возникают, в основном, из-за ручной работы с памятью. Уже сейчас приёмы вроде формальной верификации, symbolic execution, dataflow analysis потихоньку проникают из мира mission critical в mission not so critical. Да и компиляторы начинают добавлять вещи типа foo(size_t n, char data[static n]). Так что, думаю, что будущее это типобезопасность, нуль-безопасность и т.д. А вот С++, думаю, постепенно отомрёт, или повторит судьбу Кобола. Не в том смысле, как умирают языки типа D, а просто будет всё меньше и меньше людей, желающих забивать голову зазубриванием стандарта и пониманием, где там pvalue, а где xvalue, и в каком случае copy ellision не будет работать (а также, с каким компилатором и для какого стандарта).
Re[3]: Язык C - может ли умереть в обозримом?
От: Pzz Россия https://github.com/alexpevzner
Дата: 21.01.22 12:57
Оценка:
Здравствуйте, Michael7, Вы писали:

M>Что касается C/C++ то хотя бы как legacy эти языки, скорее всего точно, что еще проживут 50 лет. На них уже столько софта написано, что никаких запасов смузи не хватит переписать на Go и Rust.


Может быть, компиляторы C++ или искуственный интеллект достигнут таких небывалых высот, что перекомпиляцию на другой язык удастся полностью автоматизировать...
Re[2]: Язык C - может ли умереть в обозримом?
От: Michael7 Россия  
Дата: 21.01.22 12:57
Оценка:
Здравствуйте, cppguard, Вы писали:

C>Про 50 лет сказать не могу, но подозреваю, что активно будут развиваться инструменты, позволяющие сделать Си более безопасным. Ведь сам язык прост до безобразия, а значит надёжен, и проблемы возникают, в основном, из-за ручной работы с памятью.


Проблемы там далеко не только из-за ручной работы с памятью, на самом деле язык не такой простой как может показаться — в нем хватает неочевидных особенностей и умолчаний. Например, почитай срач в обсуждении массивов https://www.linux.org.ru/forum/development/16736706 — как видно даже с пониманием, что такое массив в Си есть проблемы. Строки в Си — это вообще больное место. Есть некоторое количество проблем, связанных с нюансами в работе управляющих символов. Отсутствие модульности в языке, которую делают де-факто с применением линковщика, впрочем, кажется в новейших стандартах ее добавляют. Проблемы типизации в ряде случаев, баги из-за препроцессора и т.д и т.п. как говорится.

В общем, как в каком-то интервью признавался Денис Ритчи, если бы они могли вернуться назад, язык бы сильно иначе спроектировали.

C> А вот С++, думаю, постепенно отомрёт, или повторит судьбу Кобола. Не в том смысле, как умирают языки типа D, а просто будет всё меньше и меньше людей, желающих забивать голову зазубриванием стандарта и пониманием, где там pvalue, а где xvalue, и в каком случае copy ellision не будет работать (а также, с каким компилатором и для какого стандарта).


Есть еще вариант, что C++ выродится фактически в отдельное подмножество, а остальное назовут легаси, которое куда-нибудь в угол засунут, может даже deprecated и включаемое отдельными ключами компиляции. Уже сейчас вообще-то C++ в типичных примерах нового кода далеко не тот C++, что был 20 лет назад. А его стандарт так разбух, что не уверен, что сейчас даже Страуструпа нельзя подловить на незнании чего-то в С++.
Отредактировано 21.01.2022 13:02 Michael7 . Предыдущая версия .
Re: Язык C - может ли умереть в обозримом?
От: Shtole  
Дата: 21.01.22 13:38
Оценка: :))
Здравствуйте, Shmj, Вы писали:

Язык Си наших дней и язык Си прошлого — два разных языка. Пробегала недавно статья об этом, с цитатами, как реальные Си-разрабы (Линус и ко) ругаются на астронавтов, пишущих компиляторы. То, что memset давно поломали, я только недавно сам узнал.
Do you want to develop an app?
Re[3]: Язык C - может ли умереть в обозримом?
От: Аноним931 Германия  
Дата: 21.01.22 14:28
Оценка: +1
M>С другой стороны, как раз 50 лет назад — эпоха появления и распространения Си и Unix (тесно связанных между собой). Их создателям даже в голову не приходило, что все это будет еще и в 2022-м году популярно. Иначе, как признавались, многое бы по другому спроектировали.

Нет, не спроектировали бы. Ибо голый факт, что когда-то твое поделие будет еще востребовано, не дает никаких, ну совершенно никаких идей, как и что можно/нужно сейчас сделать по-другому.
Старички забавляются, фантазируя, а ты им веришь
"Больше 100кмч можно ехать на автобане в любом ряду кроме правого крайнего" (c) pik
"В германии земля в частной собственности" (c) pik
"Закрывать школы, при нулевой смертности среди детей и подростков, это верх глупости" (c) Abalak
Re[2]: Язык C - может ли умереть в обозримом?
От: Vzhyk2  
Дата: 21.01.22 18:13
Оценка:
vsb>Не знаю, где он там популярен. По сути С уже давно умер.
А что, в Казахстане делают что-то, для чего нужен С???
Этот язык востребован в США, Китае, немного в ЗапЕвропе и Индии.
Re[3]: Язык C - может ли умереть в обозримом?
От: Vzhyk2  
Дата: 21.01.22 18:15
Оценка:
M>Но может он еще и взлетит.
Уже нет.
За ним нет богатого проталкивателя, типа гугла.
Он уже устарел в сравнении с С++.
Re[2]: Язык C - может ли умереть в обозримом?
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 21.01.22 18:48
Оценка:
Здравствуйте, ArtDenis, Вы писали:

AD>Си не умрёт потому, что ничего такого-же простого и переносимого ещё не придумали. Всё что создавалось на замену си было сложным.


Zig и Odin вроде достаточно простые. Они как раз и метят на замену Си.
Re[3]: Язык C - может ли умереть в обозримом?
От: ArtDenis Россия  
Дата: 21.01.22 19:00
Оценка:
Здравствуйте, D. Mon, Вы писали:

DM>Zig и Odin вроде достаточно простые. Они как раз и метят на замену Си.


Они всё-таки сложнее/высокоуровнее си. Для многих это непреодолимая преграда.
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.