Why recursion is not always good