ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
1041625 Топик полностью
fk0, легенда (02.10.2020 10:06, просмотров: 663) ответил Kabdim на Добавлю про метопрограммирование. Когда я по взглядам был ближе к твоей точке зрения, понадобилось мне не простая, но и не сложная парсилка текста. Решил сделать библиотекой на мете, а именно на boost::Spirit. Получалось красиво, но по мере приближения % реализованного к задуманному время компиляции не сложного проекта уверенно подбиралось к 10 минутам. Что приводило к чудовищным потерям моих временных ресурсов. Это изрядно меня озадачило, сделал то же самое руками,
Ты пытаешьсая упорно подвести к тезису, мол в языке есть некоторый функционал позволяющий выстрелить себе в ногу, ты сам лично пару ног себе отстрелил, поэтому язык негодный и плохой, а ровно такие же языки только без этого функционала -- мол лучше. Потому, что выстрелить в ногу нельзя. Чушь. Считаешь функционал лишним, не нужным -- можешь его попросту не использовать. В данном конкретном случае. Потому, что в общем это не совсем так, в общем он далеко не лишний, т.к. 

позволяет построение механизмов не доступных в других языках. Ты пользуешься библиотеками и не замечаешь этого, но без некоторого функционала они были бы невозможны. Или реализовались бы не на самом языке, а грязными хаками (типа того, как в том же C++ сделаны initializer_list -- компилятор когда видит тип с таким именем в std делает некоторую магию, недоступную рядовым классам, std::array ещё вроде тоже). То же множественное наследование -- это лишь более обобщённый механизм, чем "интерфейсы" в Delphi или C#. Будешь наследовать только абстрактные классы -- будет то же самое. Но иногда, однако, бывает нужно и полноценное наследование -- таково, например, архитектурное решение. В Java, Delphi, C# -- так невозможно. В C++ язык попросту позволяет. Классический пример, правда не о C++ -- невозможность написать printf средствами языка (Write в паскале).


В целом аргументов против чего угодно уже исписано достаточно. Тут сразу вспоминается Unix Haters Handbook. Но по большому счёту это аргументы ни о чём, пересказ историй на тему "как я своими кривыми ручонками отстрелил себе обе ноги". Проблема не в пистолете, а в голове.

[ZX]