[pro] About &aux
Scott L. Burson
Scott at sympoiesis.com
Sun Jun 12 19:56:54 UTC 2011
On Sun, Jun 12, 2011 at 7:00 AM, Daniel Weinreb <dlw at alum.mit.edu> wrote:
> I, myself, really dislike &aux.
>
> I don't even like
>
> (let (a b c) ...)
Agreed on both counts. &aux is just gross. Like LOOP :-) <ducks>
As for read-only variables -- yes, it would have been nice if Lisp had
used ML-style references(*) from the beginning. I understand many
Scheme compilers have to perform this transformation anyway --
locating local variables subject to assignment, and consing heap cells
to hold their values -- in order for continuation capture to work
correctly in the presence of assignment.
(* But I don't like "reference" as a term for this concept; "cell" is better.)
On Sun, Jun 12, 2011 at 8:08 AM, Faré <fahree at gmail.com> wrote:
> Also, binding forms are annoying in that they are verbose
> and move the body to the right as you nest them.
> Instead of any ad-hoc do-it-all binding macro,
> I like this macro from Marco Baringer that does nesting for you:
I use multiple values far too much to tolerate typing
MULTIPLE-VALUE-BIND all the time. So I am very much a fan of my
binding macro, which I protest is not ad hoc at all -- it generalizes
LET, LET*, and MULTIPLE-VALUE-BIND in any combination, less verbosely
and with less moving of the body to the right. It's also upward
compatible with CL:LET.
In case anyone's interested, it's at
http://common-lisp.net/project/misc-extensions/
It doesn't do destructuring, though, so I suppose it's not quite
"do-it-all". Maybe someday I will integrate fare-matcher.
> Yet Pascal just offered a portable implementation [of read-only variables]!
>
> Here's mine.
> [snip]
Very cute. I might start using this.
-- Scott
More information about the pro
mailing list