Recursive tail call optimization Tail call optimization (or tail call elimination) allows recursive functions to re-use the stack frame instead of creating new frames on every call. Thanks to that an author of recursive function in tail position is not constrained by the stack size. More over such a function runs faster than the function […]