Выдержка из Practical Common Lisp:
"Finally, the LOOP macro provides a full-blown mini-language for expressing looping constructs in a non-Lispy, English-like (or at least Algol-like) language. Some Lisp hackers love LOOP; others hate it."
Окей, то есть мои комментарии про "язык внутри языка" оказались вполне себе корректными.
Пожалуй, потихоньку начинаю склоняться ко вторым: loop чувствуется неидиоматичным, чем-то другим, чужеродным для языка.
Когда вырасту, попробую все же реализовать псевдорекурсию. Неплохой проектик выйдет.