Здесь мое основное внимание уделяется макросам Scala и Lisp/Scheme, не совсем тем, что в C/C++/Obj-CКакова цель макросов?
Я просто не вижу смысла.
Способ, которым я это понимаю, заключается в том, что макросы расширяют язык. Но так же и функции.
Я понимаю, что некоторые вещи не могут быть реализованы чисто из-за некоторых языковых ограничений, и поэтому такой макрос должен быть способом. Но множество примеров, которые я вижу с помощью макросов, похоже, являются вещами, которые довольно просто реализовать с использованием обычных функций.
В чем же цель? Чистые макросы или другие, кто-то, пожалуйста, просветите меня. Если возможно, укажите пример кода, который можно сделать в макросах, но невозможно/трудно сделать с обычными функциями.
http://stackoverflow.com/questions/267862/what-makes -lisp-macros-so-special? s = 6 | 1.8097 http://stackoverflow.com/questions/5833033/in-lisp-code-is-data-what-benefit-does-that-provide/5833388?s = 11 | 1.6415 # 5833388 –
дубликат http: //stackoverflow.c om/questions/2561221/examples-of-what-lisps-macros-can-be-used-for? s = 7 | 4.5505 –