Содержание материала

Короче:

«Препроцессор - ничего не знающий о типах, о пространствах имён, о приоритетах операторов. Это действительно серьёзный недостаток C++, и препроцессор я в своём коде использую по минимуму.»

Да это проблема. Хотя если его действительно использовать по-минимуму, то и проблем будет минимуму.

«Контекстно-зависимая грамматика.»

Спорный момент. Любой естественный язык на котором общаются люди, является контекстно-зависимым. Причем некоторые языки очень контекстно-зависимые. Что однако не мешает пятилетним детям без учебников, специализированных курсов и мастерклассов научиться более менее сносно объясняться на нем. Странно что у взрослых дядек языки с контекстно-зависимой грамматикой вызывают недетские истерики.

«Модель разделения на файлы заголовков и реализации. Это порождает массу проблем...»

«Масса проблем» «породилась» у меня за всю жизнь, ну дай бог раза три. Причем когда был последний раз я уже и не вспомню. Будучи ведущим программистом на последней работе тоже не помню чтобы у моих «братьев по оружию» возникали такие проблемы.

«Недостаточно полное стандартное RTTI (implement-specific typeid) и как следствие отсутствие в явном виде reflection (что легко лечится при помощи typeof + явного базового класса + описателя) и, в принципе никто не мешает его поддержать в языке - проблема медленного процесса стандартизации.»

Да, есть такое. Да, решается именно так. Некритично.

«Кривая реализация спецификации исключений (run-time with unexcepted_exception вместо compile-time). Проблема целиком и полностью рук, писавших компиляторы. В языке C++ я, да и не только я, предпочли бы видеть именно compile-time спецификации исключений.»

Да, это проблема. Тоже в общем-то некритично. Вряд ли будет когда-нибудь внедрено. Ибо тезис о том что «мы не платим за то что не используем» никто не отменял.

«Отсутствие анонимных функций и замыканий. Проблема медленного процесса стандартизации.»

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

«Недостаточно полная стандартная библиотека - что вполне закрывается boost'ом.»

Да, Буста вполне хватает.

Добавить комментарий


Защитный код
Обновить