On Apr 27, 2009, at 5:43 AM, namekuseijin wrote:
Macros are never compiled, they are unfinished code, after all. It's the same concept as C++ templates too, which simply reside in header files: they are a recipe to generate code, not compiled code.
Well, ..., no. :-) (lambda (x) 12) is a finished code that can be compiled regardless of whether it resides in the right-hand-side of a variable definition or a syntax definition. I don't see what's unfinished about it that prevents it from being compiled (like any other piece of code that gets evaluated). So, the "recipes to generate code" happen to be written as "code" which is optimized and compiled as usual. Aziz,,,
