powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / C++ [игнор отключен] [закрыт для гостей] / C vs C++ - философские рассуждения
11 сообщений из 11, страница 1 из 1
C vs C++ - философские рассуждения
    #40025694
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очень милая статья рассуждающая о C vs C++ с философско-социальной точки зрения.

https://cor3ntin.github.io/posts/c/?fbclid=IwAR32tYcUVbDPT769des1m3nJTrXE9dGbcn5t7bPascEme3YK0fdCnVp5_LI

Несколько цитат оттуда, которые кажутся мне наиболее значимыми.

C trusts developers while C++ trusts compilers


The C landscape is also rather different from the C++ landscape. C caters to more platforms and a lot more compilers. Everybody and their dog is writing C compilers because the language has a surface area small enough to make that possible, whereas the C++ committee will only really consider 4 implementations, all of which are represented at every meeting. As a result, many features in C are implementation-defined or optionally supported so that the variety of compilers that exist can claim conformance without doing much work, which I’m told pleases regulatory bodies.


C++ these days is more interested in portability than implementation freedom.


If you are a C developer, I imagine you see C as a neat programming language. But for the rest of us, C is something else.
C is the universal, cross-language glue that ties it all together.
...
We care about declarations. Not definitions. C++ wants to call functions in C libraries (or Python, Fortran, Rust, D, Java, etc, in all cases C can be used at the interface boundary).
In that light, C is an interface definition language. The more bells and whistles are added to C, the harder it gets to define interfaces. And the less likely it is that these interfaces will remain stable over time.
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025823
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сложно комментировать все сразу. Давайте как-то по пунктам.

C trusts developers while C++ trusts compilers
C доверяет разработчикам, в то время как С++ доверяет компилляторам.
Хм... смысловой перевод немного может быть другой. Я-бы предложил
С доверяется разработчикам...

Да. Простая истина. Если С - это portable assembler, то так оно и должно быть.
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025828
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Сложно комментировать все сразу. Давайте как-то по пунктам.

C trusts developers while C++ trusts compilers

C доверяет разработчикам, в то время как С++ доверяет компилляторам.
Хм... смысловой перевод немного может быть другой. Я-бы предложил
С доверяется разработчикам... Ну вообще-то, именно "доверяет". Прямая форма глагола, а не возвратная :) "доверяться кому-то" будет "trust oneself in someone".

И я совершенно согласен с этим утверждением. Как явные примеры:
- Передача void указателей в Си. Я (программист) знаю что там скрывается под void и компилятор мне верит. Если я ошибся - ну опаньки, или GPF или какая-нибудь плавающая ошибка. Но компилятор возбухать не будет.
- auto в С++. Вот сказано в документации что функция foo вернет vector<T> значит auto v=foo() будет вектором, а какие конкретно T в этом векторе хранятся - компилятор знает, он умный, а мне (программисту) сейчас не до того, я тут алгоритм для массив разрабатываю...

mayton
Да. Простая истина. Если С - это portable assembler, то так оно и должно быть.
Автор тоже прямо говорит в статье: "But C is proudly a low-level language. A nicer assembly." Мне, это кажется не совсем верным, от ассемблера мы ушли очень далеко. И в качестве "nicer assemly", лично я вижу C--, хоть он и не особо "portable" (собственно говоря я встречал только две имплементации, одна для Z80, другая для i8086, а потом его вроде как забросили). Но с другой стороны, знание ассемблера чрезвычайно помогает в Си. Та-же адресная арифметика, отличие стека от кучи - это не просто что-то такое что надо заучить или понять, а совершенно естественная вещь которая просто... естественна! Лично я, уже имея в запасе два с половиной ассемблера до прихода в Си, просто не понимал что может быть сложного в указателях. Они же совершенно элементарны, а тут люди их учат-учат... странные такие.
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025830
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как-бы ты это перевел?

Everybody and their dog is writing C compilers...
Насчет собак. Это устойчивое выражение или поговорка?
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025839
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
А как-бы ты это перевел?

Everybody and their dog is writing C compilers...

Насчет собак. Это устойчивое выражение или поговорка?ээээ.... это оффтопик.
Но, да, это устойчивое выражение, смысл: "все, совсем все". Этимологию не скажу, но встречается это выражение не так чтоб уж редко.
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025872
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Типа нашего "каждая собака" [знает]...
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025879
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl
Лично я, уже имея в запасе два с половиной ассемблера до прихода в Си, просто не понимал что может быть сложного в указателях. Они же совершенно элементарны, а тут люди их учат-учат... странные такие.
+1, тоже никогда таких не понимал
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025883
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl
просто не понимал что может быть сложного в указателях.
ну, во первых, в IT идёт автоматизация. Во вторых, смециализация.
Кому нравится работа с памятью, тому сложно автоматизировать бизнес процессы (прикладник).
Вот и делятся на узких специалистов и языки.
В java. происходит тоже самое. Перестали код писать. Ставят только аннотации значки над методами.
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025894
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да этому бреду уже 100 лет в обед В смысле не этой конкретной статье, а вот этому нытью неосиляторов.
смысла ноль.
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40025909
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv
неосиляторов
полез смотреть термин.... Смешно)))))
...
Рейтинг: 0 / 0
C vs C++ - философские рассуждения
    #40026200
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
White Owl,

статья-пустышка, вроде статеек и книжек Спольски Джоэла.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / C vs C++ - философские рассуждения
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]