On Dec 20, 3:03 pm, "Christian Vest Hansen" <karmazi...@gmail.com>
wrote:
> On Sat, Dec 20, 2008 at 3:29 PM, verec
>
> When they don't apply. As I understand things, this magic
> transformation would have you think that clojure has true TCO, when
> the tail-call -> recur transformation in reality only works for
> self-recurvise functions, and breaks down in the case of mutual
> recursion.

Ah! Thanks. No I understand. Proper TCO supports cross-function
boundaries "gotos" that recur cannot implement because there is no
such bytecode in the JVM...

Though I wonder how complicated it would be to "coalesce" any such
set of mutually recursive functions into a single "JVM method" where
such "local gotos" bytecodes exist and are documented -- that's what
the Java "continue xyz" and "break xyt" translate to.

Thanks for the explanation, though :-)
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to