Earlier quoted context omitted.
> I think tail call conversion to iteration You cannot convert a tail call to an iteration in a generic case. Consider the following: `let f g x = g x` Here, call `g x` is a tail call, and you've no idea what `g` is, so you cannot statically inline it or convert to a loop. > JITs are free to inline beyond that as much as they want JITs are primitive and do not have much time to do anything interesting. Inlining is ve…
How is a "proper tail call" implemented if you aren't talking about conversion to iteration? I found the following article helpful. http://www.drdobbs.com/jvm/tail-call-optimization-and-java/2...
Do not confuse tail recursion, which is the least interesting narrow case of a tail call, with tail calls in general.