Re: LAND* specifications in RnRS-style
Jim Blandy 02 Feb 1999 20:07 UTC
> Thank you very much for your comments and specifications. They
> really _feel_ RnRS!
You're certainly welcome!
Please let me know your preference regarding the name. I would like
to include this in Guile, and I would like to introduce it under its
final name first, rather than renaming it after people have started to
use it.
Below are my thoughts, which you certainly don't have to agree with.
When talking about things like names, one usually ends up with several
conflicting persuasive arguments. So, do as you please.
I agree with you that `and*' seems ambiguous. It seems that the
intent of the `*' is to allude to `let*'; in the context of Scheme,
this is fine, because `let*' is the only name using `*' as a suffix
this way. However, in the larger context of Common Lisp, `*' usually
designates forms that do something sequentially, with non-`*' variants
that do it in parallel. For example, consider do* and prog*. (The
relationship between `list*' and `list' does not follow this pattern,
though. I couldn't find any other `*' names.)
Using that interpretation of `*', I feel it doesn't add much in the
case of your macro, since `and' already does something sequentially.
So, to suggest the binding behavior, I thought that perhaps `let' or
`let*' should appear in the name somewhere. The `*' should certainly
be there, since your macro binds things sequentially. If one calls it
`let-and*', then one has separated the `let' and the `*', weakening
the allusion to `let*'. Thus, `and-let*'.