From: pjb@informatimago.com (Pascal J. Bourguignon)
To: help-gnu-emacs@gnu.org
Subject: Re: "push" creating circular objects
Date: Sat, 23 Aug 2008 14:17:47 +0200 [thread overview]
Message-ID: <87iqtsvsb8.fsf@hubble.informatimago.com> (raw)
In-Reply-To: umyj6l3e3.fsf@gmail.com
Charles Sebold <csebold@gmail.com> writes:
> On 21 Aug 2008, John Paul Wallington wrote:
>
>> I'm not certain what's going on. Are you sure that representation
>> means circular structure? Or is it merely labelling the object "ul"
>> for future reference then referring to it? (See (elisp)Circular
>> Objects.)
>
> I am likely confused. Is this not the same thing?
>
> Oh. I guess it isn't. This is one of the insights I needed, I think.
>
>> Also, how about consing up the strings with (string ?u ?l) or somesuch
>> to avoid 'em being treated as the same?
>
> I'll give that a try... yeah, that fixed it. I'm surprised I have to do
> this, though. Why are they being treated as the same?
>
> Knowing this, I replaced (string ?u ?l) with (copy-sequence "ul") and so
> forth, and got the same result.
>
> Thanks very much for this. But I'm surprised I have to do it.
The syntax ##/#= is used to be able to distinguish these cases:
+-----------------------+ +-----------------------+
| (#1="ul" #1#) | | ("ul" "ul") |
| | | |
| +---+---+ +---+---+ | | +---+---+ +---+---+ |
| | * | * |-->| * |nil| | | | * | * |-->| * |nil| |
| +---+---+ +---+---+ | | +---+---+ +---+---+ |
| | | | | | | |
| | +--------+ | | v v |
| | | | | +------+ +------+ |
| v v | | | "ul" | | "ul" | |
| +------+ | | +------+ +------+ |
| | "ul" | | +-----------------------+
| +------+ |
+-----------------------+
--
__Pascal Bourguignon__ http://www.informatimago.com/
"I have challenged the entire quality assurance team to a Bat-Leth
contest. They will not concern us again."
prev parent reply other threads:[~2008-08-23 12:17 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-20 13:25 "push" creating circular objects Charles Sebold
2008-08-20 16:27 ` Charles Sebold
2008-08-20 19:07 ` Charles Sebold
2008-08-20 21:47 ` weber
2008-08-20 21:50 ` weber
2008-08-21 14:12 ` Charles Sebold
2008-08-21 14:25 ` xraysmalevich
2008-08-21 15:23 ` Charles Sebold
2008-08-21 18:41 ` Pascal J. Bourguignon
2008-08-21 20:25 ` Charles Sebold
2008-08-21 16:14 ` John Paul Wallington
2008-08-21 16:49 ` Charles Sebold
2008-08-23 11:43 ` Nikolaj Schumacher
2008-08-23 12:17 ` Pascal J. Bourguignon [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87iqtsvsb8.fsf@hubble.informatimago.com \
--to=pjb@informatimago.com \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.