Code Review
Compare your solutions
#| This exercise has no tests.
Any solution is a right answer. |#
Because its made on a applicative order, its going to
valuate all the arguments before starting de function.
So, the function (or procedure) is going to be stuck in
a loop, calling itself everytime because of the "else-clause"
of the new-if function thats going to be valuated.