Recently I came to know about amazing concept of tail recursion optimization. If
you are a computer scientist, you must be knowing what recursion
[https://en.wikipedia.org/wiki/Recursion_(computer_science)] is. It is a
function calling itself multiple times until certain edge condition is reached.
When an edge