Why not make "if" *not* be a special form in Scheme?.

chris at seberino.org chris at seberino.org
Fri Jan 25 23:35:33 PST 2008


If I'm not mistaken, what makes a special form to be special is that
evaluation happens abnormally....


(if (< x 0) "negative" "positive")

The only way I can see that "if" is special is that for an optimization it will
chose to not evaluate the last list element when the condition is TRUE.
Is that right?

Wouldn't it be better/more minimalistic to just always evaluate the last list
element to cut down on the number of "special forms" by 1?

I thought unnecessary special forms was bad and
unminimalistic which is not the Scheme-ic way!?

Chris



More information about the KPLUG-LPSG mailing list