3 ms·
As far as I can see Clojure CLR uses the Dynamic Language Runtime and Expression Trees which do support tail recursion. I don't know if Clojure CLR takes advant
by DrJokepu 17y ago
As far as I can see Clojure CLR uses the Dynamic Language Runtime and Expression Trees which do support tail recursion. I don't know if Clojure CLR takes advantage of it, probably not. However, recent .NET VMs automatically apply tail-recursion optimization if a number of specific conditions are met, even if the compiler doesn't actually emit tail-recursive IL.