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

Re: problems with named-let



I agree with Kent that we should view iteration as a special case of
recursion, and there is a precedent for this: the REC in LETREC.  This
makes RECUR especially appropriate, since it is just a sugared LETREC.
Though RECUR is my choice of all the names for named let I've heard so
far, I'm not as opposed to NAMED-LET as Kent is.

Personally, I've always found named LET natural and use it a lot in
"private" code, though I never like the syntax overloading it
involves.  However, I too have had difficulty explaining it to others,
so I avoid it in code students may see.  I also respect the opinions
of others who have had much more experience trying to teach it than I,
and most of them have had substantial difficulty teaching it.

I'm willing to keep the named let behavior of LET if it is a necessary
compromise to add a new name for it, but I find having both in the
language distastful.  It inevitably resuls in confusion, and makes our
problems a part of our legacy.  In a number of other cases where we've
allowed two names for the same thing as a compromise we've eventually
ended up flushing one of them.