|
From: | Hans Nowak |
Subject: | [Chicken-users] Re: Stupid backquote/unquote question |
Date: | Thu, 21 Feb 2008 10:39:25 -0500 |
User-agent: | Thunderbird 2.0.0.0 (Macintosh/20070326) |
Alex Shinn wrote:
quasiquote is syntax - it happens at compile-time, so to apply it to dynamic data at runtime you need to call EVAL:
Thanks, I understand it now. I keep thinking of macros as first-class, when they're not. :-(
(Which leads me to wonder, *are* there Lisps/Schemes that have first-class macros? Where you can, for example, pass a macro as an argument to map, the way you can do with a function?)
I guess I'll have to use eval, but I don't think it's going to work if I use this kind of s-expr inside a function? Like
(define (blah x) (sasm (jmp ,x))) (where SASM is the name of the macro that handles this kind of s-expressions). --Hans
[Prev in Thread] | Current Thread | [Next in Thread] |