Я действительно хочу узнать макросы Схемы. Я просмотрел содержание «On Lisp», и многие главы были посвящены макросам Lisp. Тем не менее, я не знаю общих шепотов. Могу ли я использовать его для изучения Scheme Macros?Изучите макросы в схеме от Lisp
ответ
Макросы схемы («гигиенические макросы») полностью отличаются от традиционных макросов Lisp. Некоторые реализации схемы предлагают макросы Lisp в дополнение к макросам Scheme, но это не требуется стандартом Scheme.
Я бы порекомендовал вам искать учебные материалы, относящиеся к макросам Scheme, если вы хотите узнать об этом стиле макроса. Google показывает много страниц, предлагающих введение в макросы Scheme.
Я ничего не знаю о макросах. Я не понимаю, что макросы Lisp полностью непригодны для использования в Scheme или Scheme. Макросы просто «лучше»? – unj2
Схема Макросы в основном лучше; более высокий уровень, если хотите. Я думаю, вы можете создавать макросы Scheme из макросов CL, но не наоборот. Макросы схемы намного приятнее работать, поскольку они не будут захватывать переменные на вас. –
Re: Натан Сандерс
На Лисп определенно стоит прочитать; вы получаете представление о стиле макросов и некоторых интересных решениях проблем. Кроме того, вы обнаружите, что лучше понять проблему, которую разрешают гигиенические макросы.
Я еще не могу прокомментировать, или я бы сделал это по очереди.
Грег прав, макросы Common Lisp слишком отличаются от Scheme's, чтобы узнать специфику с On Lisp. Но намерение макросов в On Lisp применяется к любому языку с макросами. Возможно, стоит прочитать главы макросов для идей, а не для конкретного кода. –