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

re: tail recursion

> But I want it to be allowed to call an implementation a `Scheme' even if I
> am able only to run programs with certain restrictions.

I see nothing wrong with requiring implementors who don't handle tail
recursion or storage management adequately (however we end up defining
"adequately") to admit up front that their implementation is somewhat
deficient.  They can still call the language they implement "Scheme",
but they can claim only partial conformance to the standard.  If they
want to be fully conformant, they'll have to make the appropriate mods
to their common back end, if necessary.

If users are happy with a somewhat deficient version of Scheme, that's
okay with me, as long as it's made clear to them that they might be
missing something, i.e., that they are "able only to run programs with
certain restrictions."

We're much more likely to effect improvements in compiler technology
with a strong and coherent statement than we are by offering a
compromise right off the bat.  I think it's naive to think that we can
start with a soft requirement now and hope to harden it later.  I
understand that you don't believe we're in a position to effect any
such improvements, and maybe you're right, but I think we must include
proper treatment of tail recursion as a requirement now or give it up
forever.  And I believe it's too important to Scheme to give it up.