guile-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] Possible Documentation Fix


From: Noah Lavine
Subject: Re: [PATCH] Possible Documentation Fix
Date: Mon, 31 Jan 2011 14:54:23 -0500

Hi,

> It is correct, but I kinda liked the explicit mention of pattern
> variable environments in the original.  In syntax expansion, there are
> lexical variables, bound in lexical environments, and pattern variables,
> bound in syntax-expansion environments.  The confusion addressed by that
> paragraph was to treat a lexical variable as a pattern variable.
...
> Do you still think the discussion of environments is distracting?
> Documentation should ulitimately be for users, and if the original text
> is not useful at all, by all means we should change it.

Not distracting, it's just that I didn't understand it immediately
because it didn't explicitly say that I was defining variables in two
different sorts of environments - just that there were two different
sorts of environments. How about this language?

The reason that this one doesn't work is that there are really two
environments at work here -- the environment of pattern variables, as
bound by @code{syntax-case}, and the environment of lexical variables,
as bound by normal Scheme. The outer let form establishes a binding in
the environment of lexical variables, but the inner let form is inside
a syntax form, where only pattern variables will be substituted. Here
we need to introduce a piece of the lexical environment into the
pattern variable environment, and we can do so using
@code{syntax-case} itself:

Noah



reply via email to

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