Как нам реорганизовать С++

Apr 24, 2024 12:47



Понадобилось мне давеча сделать нечто хитрое с помощью взаимно-рекурсивных классов.

Только для сиплюсплюсников )

work

Leave a comment

spamsink April 24 2024, 21:44:35 UTC
"Мелкие недостатки", накапливаясь, создают барьер для эффективного практического использования языка. Если у программиста половина времени будет уходить на промпты к какому-нибудь ИИ вида "Я хочу сделать ХХХ, а оно вот так не компилируется. Как это правильно написать?", ничего хорошего из этого не выйдет.

Reply

yatur April 25 2024, 05:03:30 UTC
Когда не компилируется - это еще полбеды. Хуже, когда написана какая-то ересь, которая сразу и не скажешь, как работает - ну типа вашего примера. Еще хуже, когда компилируется и делает что-то неожиданное. Типа

vector x(2); - создает вектор [0,0]

vector x{2}; - создает вектор [2]

С++ полон таких мин и сиплюсплюсники, похоже, жутко гордятся знанием их карты и умением их обходить :) А некоторые с удовольствием изобретают новые :D

Reply

spamsink April 25 2024, 05:24:30 UTC
Это, конечно, смешно, но книгу "Ошибки-ловушки при программировании на Х", наверное, можно написать практически про любой индустриальный язык Х. Начиная как минимум с Фортрана.

Изобретают новые мины весьма некоторые люди, это да.

Reply

vitus_wagner April 25 2024, 05:38:49 UTC

Ну и давно пора перестать использовать этот гибрид ужа с ежом - портабельного ассембелра с языком высокого уровня. Используйте Rust если нужен zero-runtime cost. (который у C++ кстати ни разу не zero) и что-нибудь интерпретируемое в остальных случаях.

Reply

spamsink April 25 2024, 05:49:07 UTC
Да-да, сейчас всё брошу и начну переписывать миллионы строк на Rust. (Или всё брошу и начну уговаривать менеджмент уговорить SWE department всё бросить и обеспечить инфраструктуру для cross-language development.)

Reply

secondary_tea April 29 2024, 13:34:01 UTC
Что в Си (или Си++) от ассемблера?

Reply

vitus_wagner April 29 2024, 15:38:51 UTC

Адресная арифметика.

Reply

secondary_tea April 29 2024, 16:42:47 UTC
и... все?

Reply


Leave a comment

Up