On Mon, Mar 03, 2003 at 01:07:36PM +0000, Piers Cawley wrote: > > I think you're overlooking the "restoreall" done just before the > > jump-no-save-returnaddress operation... I see two "saveall"s and > > two "restoreall"s. > > But with proper tail call optimization you'd only need *one* > saveall. That's why it's an optimization.
Tail call optimization is a space (stack size) optimization. The scheme definition only requires space efficiency. The time optimization is important but a secondary consideration for the functional language folks. -- Jason