From: "Stuart D. Herring" <address@hidden>
Reply-To: address@hidden
To: "Herbert Euler" <address@hidden>
CC: address@hidden
Subject: Re: Macro vs Function
Date: Wed, 12 Apr 2006 08:26:05 -0700 (PDT)
This much you can solve simply by using ',(car largs). In general, in a `:
x "use literally and eval later"
'x "never eval at all"
,x "use symbolically and eval later"
(eval x) "use literally and eval twice later"
,(eval x) "evaluate now and later"
',(eval x) "evaluate now only"
',x "use symbolically and don't eval later"
(...where 'now' is macro expansion time and 'later' is interpretation
time.) You want the last one, since largs is a macro argument (use
symbolically) but you don't want the resulting list evaluated. (I hope I
got all those meanings right!)