At 2005-08-23T23:50:46-05:00, Joe Corneli wrote:

> Why is it that
> 
> (setq a (gensym)) ;=> G2007
> a                 ;=> G2007
> (equal a 'G2007)  ;=> nil

Perhaps this is because `a' is an uninterned symbol --- see
`(elisp)Creating Symbols' --- while `G2007' is an interned symbol.
(`gensym' creates an uninterned symbol.)

ELISP> (intern-soft a)
nil
ELISP> (intern-soft 'G55817)
G55817

> while 
> 
> (setq a 'foo)    ;=> foo
> a                ;=> foo
> (equal a 'foo)   ;=> t

In this case, both `a' and `foo' are interned.

ELISP> (intern-soft a)
foo
ELISP> (intern-soft 'foo)
foo

Raghavendra.

-- 
N. Raghavendra <[EMAIL PROTECTED]> | See message headers for contact
Harish-Chandra Research Institute   | and OpenPGP details.
_______________________________________________
Help-gnu-emacs mailing list
Help-gnu-emacs@gnu.org
http://lists.gnu.org/mailman/listinfo/help-gnu-emacs

Reply via email to