[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RPG> Let me repeat my reason: I feel it is vitally important to get Scheme into
RPG> the mainstream, and it is better to place as few limitations on that
RPG> process as possible, at least for now. Tail call removal is possibly a
RPG> large barrier to certain compiler groups who would otherwise support
RPG> Scheme completely. At least at present.
JFB> As is the case with the MIPS intermediate language system, the Titan does
JFB> not support tail call.
This is precisely the problem. Changing Scheme because of implementors
not supporting tail calls properly is a first class example (sorry) of
the tail wagging the dog. Tail recursion optimization is a general win
[I have even seen it done in FORTRAN]. I think that it is very
important that compiler implementors be aware of more implementation
techniques than needed for Edison or PCC.
I use Scheme in small (i.e. embedded) systems with real memory. I depend
on tail call optimization. In order to get Scheme into mainstream *usage*,
efficient, high-quality implementations are needed. Bumming the
implementation to make it easy for compiler writers to remain provincial
will not do this.
[Joel, I have used Scheme->C for some X11 stuff. It is a great system.
I don't mind you calling it Scheme with some restrictions. But as a
Scheme user, I *depend* on tail calls].