Hi Ralf,


On Tue, Apr 1, 2014 at 3:52 PM, Ralf Moeller <moeller@tu-harburg.de> wrote:
Hi all,

ABCL does not seem to support tail call optimization right now.

That's right. Basically we've inherited that "property" from the JVM: The Java language disallows tail call optimization in the JVM because it interferes with security options which walk the stack to determine access rights of callers.
 
Are there any plans to provide this?


Not at this point, however, I know that there have been work-arounds for JVM based Scheme implementations, because it's part of the Scheme language to require TCO; I don't know about the performance consequences, though. If you want to write portable CL though, you can't depend on TCO: it's not part of the language definition that the underlying runtime/compiler should support it.

If anybody has some insights on how to implement TCO efficiently, I don't see why we would not want to accept code to implement it and support it -- at this time I don't have any plans to implement it personally, though.



Bye,

Erik.

-- 
http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.