> -- Geniepro писал(а):
> Кстати, Илья, вот Вы часто упоминаете метапрограммирование на Компонентном Паскале, а не могли бы Вы продемонстрировать какой-нибудь типичный пример его использования, что бы все сразу ахнули и сказали: "Да, определённо в этом что-то есть..." ;о)
Да возьмите стандартную подсистему Sql из BlackBox и посмотрите на её возможности. Отображение типов языка на таблицы происходит так же прозрачно и удобно, как, ну например, в PHP. Или возьмите BlackBox Lab - самый типичный школьный интерпретатор получился. Только без интерпретатора

Большинство того, что реально нужно, то можно (либо потенциально можно, но ещё не сделано, т.к. пока руки не дошли у людей). А вот то, чего нельзя, обычно из области "не суй пальцы в розетку". Хотя сразу может быть и не больно, но когда-нибудь на фазу дадут напряжение, и будет ой-ёй

Мелкий, но надоевший пример - "есть ли жизнь без break". Я б про него не вспомнил в очередной раз, но просто недавно прочёл хорошее сравнение, он высказано было совсем по другому поводу психологом Леонтьевым.
Представьте себе, что людям, никогда не видевшим велосипедов, попадаются два экземпляра: трёхколесный и двухколёсный. Как вы думаете, какой им покажется более удобным и естественным? Конечно, трёх. И попробуйте объяснить им обратное (если не можете показать). Они покрутят пальцем у виска и скажут: "Вы что, как можно ездить без третьего колеса? Это ж неудобно!" А если начнёте доказывать, что удобно, то скажут: "Можно, конечно, но ведь это всё время ногой об землю толкаться придётся..." ("ну, ведь это лишние булевы переменные заводить и проверки").