proper tail calls

Igor Bukanov igor at
Mon Jan 21 16:03:36 PST 2008

On 22/01/2008, Jon Zeppieri <jaz at> wrote:
> Really, all of our back-and-forth since those messages has been pretty
> much off topic.

To bring this back to the topic. I do not think an explicit syntax for
tail calls is useful for the following reasons:

1. It does not guarantee at the compile time that the call is in PTC
position since the type checker is optional in the language. As such
it can not be used as an universal static assert.

2. Given that ES4 does not specify a particular space bounds on most
of runtime operations, the explicit syntax may mislead a reader about
the execution complexity of the code. An implicit PCT at least does
not emphasis itself syntactically and, as a consequence,  the reader
may consider all aspects of the code like GC pressure, operation
complexity etc when reasoning about the space and time behavior.

Regards, Igor

More information about the Es4-discuss mailing list