[Scheme] Попмогите с syntax-case
От: jartur Россия http://jartur.l-square.net;
Дата: 22.09.09 10:53
Оценка:
В общем задача такая: необходимо написать макру define-ci-keywords, которая будет работать вот так

(define-ci-keywords foo bar)
; превращается в

(define-lex-abbrevs
(foo (:: (:or #\f #\F) (:or #\o #\O) (:or #\o #\O))
(bar (:: (:or #\b #\B) (:or #\a #\A) (:or #\r #\R)))


Писать целиком не требую =) Однако нахожу макросистему Scheme весьма непонятной. Поэтому проясните хотя бы следующее:
1. Как внутри макры превратить параметр, являющийся символом, в строку?
2. Как тут правильно будет выглядеть рекурсия в макре?

Ну а если напишите целиком, буду вообще благодарен.
蝸牛そろそろ登れ富士の山
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.