To my surprise I get to the point in the LISP evaluator where I handle function return and I suddenly discover that it is easier to implement tail recursion than it is to not implement tail recursion. This is the second time this has happened in my career