Здравствуйте, WolfHound, Вы писали:
WH>Конечно, если ничего другого нет, то я и сам использую. WH>Но макросы в С/С++ очень плохие.
Ну да, очень ограниченные они. И временами опасные.
_>>1. В какой язык? WH>В любой.
Т.е. например C++ сможем так расширить? Т.е. речь о неком препроцессоре?
_>>2. Вообще то на макросах C/C++ как раз микро DSL и получались (те же самые таблицы обработчиков)... Но от них предпочли отказаться в пользу самых классических конструкций (типа button->Connect(..., OnClick)). WH>Далеко не всегда так можно сделать.
Конечно. Но я говорю о самой тенденции. Ведь с точки зрения пользователя библиотеки (ему же не важно какие там ужасы внутри) вариант на макросах выглядел возможно даже яснее и лаконичнее. Но при этом он:
— не поддерживался IDE (автодополнение и т.п.)
— был не типобезопасным
— при ошибках компилятор выдавал нечто совершенно невразумительное.
И в итоге предпочтение отдали инструменту на основе конструкций самого языка, хотя они возможно и не такие ясные и частенько более многословные.