help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: Are two symbols `equal' iff they are `eq'?


From: Marcin Borkowski
Subject: Re: Are two symbols `equal' iff they are `eq'?
Date: Sun, 09 Aug 2015 17:45:31 +0200

On 2015-08-09, at 17:19, Eli Zaretskii <eliz@gnu.org> wrote:

>> From: Marcin Borkowski <mbork@mbork.pl>
>> Date: Sun, 09 Aug 2015 17:10:06 +0200
>> 
>>  tail_recurse:
>>   QUIT;
>>   if (EQ (o1, o2))
>>     return 1;
>> 
>> >From the capitalization I would guess that QUIT is a C macro.  From its
>> name I would guess that anything after it is irrelevant;-).  Well,
>> joking aside, I found its definition in the source; do I get it right
>> that it quits if something like C-g happens?
>
> Yes.
>
>> If yes, I'd be curious why it is here.
>
> To allow the user to interrupt a (potentially) long operation.

That's obvious, I just wondered why at this point.

>> Apart from that, it seems that I was right: `equal' for
>> symbols just calls `eq' (C EQ, not Lisp eq, to be more precise).
>
> What else could it possibly do?

It could e.g. compare the string representation, so two symbols with the
same name but in different obarrays, or one interned and the other not,
could be equal but not eq.  (I'm not sure whether this would be useful,
though - just a thought.)

Regards,

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University



reply via email to

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