Next: , Previous: Scheme bindings in Pre-Scheme, Up: Standard Pre-Scheme environment


9.3.2 Tail call optimization

— syntax: goto procedure argument ...

The Pre-Scheme compiler can be forced to optimize tail calls, even those it would not have otherwise optimized, by use of the goto special form, rather than simple procedure calls. In every respect other than tail call optimization, this is equivalent to calling procedure with the given arguments. Note, however, that uses of goto may cause code to blow up if the Pre-Scheme compiler had reason not to optimize the tail call were it not for the goto: it may need to merge the tail-called procedure into the caller's code.