Without looking too deeply into it, this might be due to a limitation in the JVM: it has no "tail call" instruction (Sun's claim is that it would mess with the security manager, though the workaround for this is pretty obvious), so this Lisp probably has to use an exception trampoline, which imposes a significant performance penalty. So, it was probably made manual to give the developer a choice.
It doesn't make it any better, per se, but that's probably why it's like that.
http://groups.google.com/group/jvm-languages/browse_thread/t...