emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Strange behavior of macro


From: Andreas Schwab
Subject: Re: Strange behavior of macro
Date: Tue, 30 May 2006 12:35:08 +0200
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.50 (gnu/linux)

"Herbert Euler" <address@hidden> writes:

>>From: Andreas Schwab <address@hidden>
>>To: "Herbert Euler" <address@hidden>
>>CC: address@hidden
>>Subject: Re: Strange behavior of macro
>>Date: Tue, 30 May 2006 12:23:49 +0200
>>
>>"Herbert Euler" <address@hidden> writes:
>>
>> > Is the following in Emacs a expected behavior of macro?
>> >
>> >    (defmacro m1 (v)
>> >      (let ((len (length (eval v))))
>> >        `(quote ,len)))
>> >         => m1
>>[...]
>> >    (m1 v)
>> >         => error: (wrong-type-argument sequencep v)
>>
>>See (elisp)Eval During Expansion.
>
> OK, so it's an accepted behavior.  Btw, in the test of GNU clisp,
> it's safe to write such a macro:

Emacs Lisp is using dynamic binding, not lexical binding.

Andreas.

-- 
Andreas Schwab, SuSE Labs, address@hidden
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."




reply via email to

[Prev in Thread] Current Thread [Next in Thread]