[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Basic Design Questions: function cells
You forgot that people have made various efficiency-based
arguments for function cells. These arguments may be found in
the archives. (I cannot understand them so I wont try to explain it).
Having a function cell also gives the language designer another way to
add more inconsistency to the language, in the way of breaking down
possible analogies, for example LET=>SETQ as FLET=>{nothing-in-CL}.
Also, if in the form (<a> <b> <c>) all of <a> <b> and <c> were
evaluated in the same namespace, and if you said "left-to-right"
evaluation order is preserved then users would imply that to mean
evaluate <a> then <b> then <c>. However, if <a> is evaluated
differently then it might not bother anyone than in some CL
implementations the order of evaluation is <b> <c> <a>, and in some it
is <a> <b> <c>.
-gjc
{You have to know the rules before you can break them.}