[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [External] : Re: Passing result of macroexpand-all as argument to a
From: |
Drew Adams |
Subject: |
RE: [External] : Re: Passing result of macroexpand-all as argument to a function |
Date: |
Wed, 9 Aug 2023 15:27:01 +0000 |
> > Why don't you just try?
> I do not think one can just try it
Yes, you can. (This is the beauty of Lisp.)
> because it is not evident at what instance in
> time does the interpreter interpret the output
> code of a macro.
As mentioned, a macro _call_, such as (mymacro...)
is interpreted at that same time any Lisp form is.
What's particular about interpreting a macro call
is that first the call is macroexpanded, according
to the macro definition, and then the expansion
result is interpreted (evaluated) - immediately.
That's all.
If you byte-compile the Lisp source code then the
macro call gets macroexpanded during compilation,
and the result of expansion is then compiled to
produce the byte-compiled code. In effect, the
macro-call source code disappears and is replaced
by the expansion, in line, and the resulting code
is then byte-compiled.
- Re: [External] : Re: Passing result of macroexpand-all as argument to a function, (continued)
- Re: [External] : Re: Passing result of macroexpand-all as argument to a function, Pierre Rouleau, 2023/08/09
- RE: [External] : Re: Passing result of macroexpand-all as argument to a function, Drew Adams, 2023/08/09
- Re: [External] : Re: Passing result of macroexpand-all as argument to a function, Michael Heerdegen, 2023/08/08
- Re: [External] : Re: Passing result of macroexpand-all as argument to a function, Heime, 2023/08/09
- Re: [External] : Re: Passing result of macroexpand-all as argument to a function, Michael Heerdegen, 2023/08/09
- Re: [External] : Re: Passing result of macroexpand-all as argument to a function, Heime, 2023/08/09
- RE: [External] : Re: Passing result of macroexpand-all as argument to a function, Drew Adams, 2023/08/09
- RE: [External] : Re: Passing result of macroexpand-all as argument to a function, Drew Adams, 2023/08/09
- Re: Passing result of macroexpand-all as argument to a function, Michael Heerdegen, 2023/08/08
- Re: Passing result of macroexpand-all as argument to a function, Heime, 2023/08/09
- RE: [External] : Re: Passing result of macroexpand-all as argument to a function,
Drew Adams <=
- RE: [External] : Re: Passing result of macroexpand-all as argument to a function, Heime, 2023/08/09
- RE: [External] : Re: Passing result of macroexpand-all as argument to a function, Drew Adams, 2023/08/09
- RE: [External] : Re: Passing result of macroexpand-all as argument to a function, Heime, 2023/08/09