On Friday, 12 October 2012 at 17:39:53 UTC, Alex Rønne Petersen wrote:
However, the primary problem with this approach is a really mundane one: The major compiler back ends (GCC and LLVM) don't have any means of guaranteeing TCE...

LLVM shouldn't be as big a problem – there is some support for guaranteed TCO in order to make implementations of some of the functional languages possible.

I know that you can force LLVM to tail-call everything it possibly can (which in consequence horribly breaks the ABI), but I am not sure right now how fine-grained you can control that mechanism.

Also don't forget that some calling conventions don't lend themselves particularly well for doing efficient tail calls.

David

Reply via email to