The JVM don’t like that TCO removes stack frames while loops have no stack frames at all, so why does this matter?
d
diesieben07
03/15/2018, 10:09 AM
It matters for debugging. The tail calls would not be visible in stack traces, which is also what happens with Kotlin's compile-time tail-recursion optimization.