Menu

#28 macro-generating macros

open
None
5
2002-11-12
2002-11-12
Shiro Kawai
No

The macro generated by another macro isn't expanded
properly.

e.g. from oleg's post in c.l.s.

(define-syntax mreverse
(syntax-rules ()
((_ . args)
(letrec-syntax
((go
(syntax-rules ()
((_ (first . rest) result)
(go rest (first . result)))
((_ () result)
'result)))
(aux
(syntax-rules ()
((_ (elem . tail))
(go (elem . tail) ()))
((_ elem . tail)
(go (elem . tail) ())))))
(aux . args)))))

Discussion


Log in to post a comment.

MongoDB Logo MongoDB