[Top][All Lists]

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

Re: problems with flet on last emacs

From: Pascal J. Bourguignon
Subject: Re: problems with flet on last emacs
Date: Wed, 27 Jun 2012 18:29:27 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.4 (gnu/linux)

Tassilo Horn <address@hidden> writes:

> "Pascal J. Bourguignon" <address@hidden> writes:
>>> Two times `x', and those should probably gensyms, anyway...
>> They probably are.
>> Try:
>> (eq 'x (first (first (second (macroexpand '(flet ((foo () 1))
>>                                               (foo)))))))
>> and try:
>> (let ((expansion  (macroexpand '(flet ((foo () 1)) (foo)))))
>>   (eq (first (first  (second expansion)))
>>       (first (second (second expansion)))))
> Ok, both are nil, so x and x are different symbols.  cl uses macroexp's
> macro expansion macros at various places, and `macroexp-let2' uses
> (make-symbol "x") to create new symbols.  That's not making it easier to
> understand...

That'd be a "bug" in the emacs lisp printer.

Symbols that are not interned in any package should be printed with the
#: prefix.  eg. in emacs-version "23.4.2", (make-symbol "x") --> #:x

__Pascal Bourguignon__                     http://www.informatimago.com/
A bad day in () is better than a good day in {}.

reply via email to

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