From: Andy Wingo <wingo@pobox.com>
To: Mark H Weaver <mhw@netris.org>
Cc: Peter TB Brett <peter@peter-b.co.uk>, guile-devel@gnu.org
Subject: Re: syntax-local-binding
Date: Tue, 24 Jan 2012 22:22:37 +0100 [thread overview]
Message-ID: <87ipk0lrs2.fsf@pobox.com> (raw)
In-Reply-To: <874nvls04f.fsf@netris.org> (Mark H. Weaver's message of "Tue, 24 Jan 2012 08:25:52 -0500")
Hello Mark :)
Thanks again for your deep thoughts. This conversation is a bit
stressful for the both of us, but we wouldn't be having it if we didn't
both care about Guile.
In the spirit of diffusing tension here, feel free to imagine all of my
words as coming from Mr. Collins for the duration of this thread ;-)
On Tue 24 Jan 2012 14:25, Mark H Weaver <mhw@netris.org> writes:
> Andy Wingo <wingo@pobox.com> writes:
>
>> None of the interfaces that I proposed leak internal psyntax
>> representations.
>
> `syntax-local-binding' leaks the internal representations used for
> bindings.
You mean, whether something is a lexical, or a macro, or a global, or
whatever; OK. I think that "leak" is the wrong word here: leaks are
inadvertent, whereas providing this information is what this function
was designed to do; and furthermore it's not a detail of psyntax (cf
Racket which does not use psyntax).
Let me offer another example of its utility: writing a macro stepper.
Again, for an example I'll have to link to the PLT folks' great work:
http://docs.racket-lang.org/macro-debugger/index.html
With syntax-local-binding, syntax-locally-bound-identifiers, and a
couple hooks that get fired when a macro is expanded and reconstructed,
you could implement a macro stepper for Guile.
And, once we provide those hooks, you can implement this in a module.
Pretty sweet, if you ask me!
Perhaps, though, at this point we're just going to have to agree to
disagree; surely we have plumbed the depths sufficiently. It's not
satisfying, but I think we both made a great effort to communicate and
convince -- and in some cases, to work on each other's code. We really
need to move on here. I will re-post my patches taking into account
your comments regarding the form of the environments.
Regards,
Andy
--
http://wingolog.org/
next prev parent reply other threads:[~2012-01-24 21:22 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-15 17:00 syntax-local-binding Andy Wingo
2012-01-15 17:22 ` syntax-local-binding Andy Wingo
2012-01-19 11:41 ` syntax-local-binding Andy Wingo
2012-01-20 20:26 ` syntax-local-binding Mark H Weaver
2012-01-20 21:23 ` syntax-local-binding Andy Wingo
2012-01-20 22:03 ` syntax-local-binding Mark H Weaver
2012-01-22 0:03 ` syntax-local-binding Ludovic Courtès
2012-01-23 16:05 ` syntax-local-binding Andy Wingo
2012-01-23 21:03 ` syntax-local-binding Mark H Weaver
2012-01-23 22:19 ` syntax-local-binding Andy Wingo
2012-01-24 2:11 ` syntax-local-binding Mark H Weaver
2012-01-24 11:42 ` syntax-local-binding Andy Wingo
2012-01-24 17:29 ` syntax-local-binding Noah Lavine
2012-01-24 10:30 ` syntax-local-binding Peter TB Brett
2012-01-24 10:38 ` syntax-local-binding David Kastrup
2012-01-24 11:26 ` syntax-local-binding Andy Wingo
2012-01-24 13:25 ` syntax-local-binding Mark H Weaver
2012-01-24 20:28 ` mark uniqueness (Was: Re: syntax-local-binding) Andy Wingo
2012-01-25 0:26 ` mark uniqueness Mark H Weaver
2012-01-25 9:02 ` Andy Wingo
2012-01-24 21:22 ` Andy Wingo [this message]
2012-01-25 2:30 ` syntax-local-binding Mark H Weaver
2012-01-25 7:49 ` syntax-local-binding Stefan Israelsson Tampe
2012-01-25 11:18 ` syntax-local-binding Andy Wingo
2012-01-25 13:18 ` syntax-local-binding Ludovic Courtès
2012-01-25 18:08 ` syntax-local-binding Mark H Weaver
2012-01-26 11:21 ` syntax-local-binding Andy Wingo
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
List information: https://www.gnu.org/software/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87ipk0lrs2.fsf@pobox.com \
--to=wingo@pobox.com \
--cc=guile-devel@gnu.org \
--cc=mhw@netris.org \
--cc=peter@peter-b.co.uk \
/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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).