Resposta ao exercício 74
(defmacro enquanto (teste &rest exprs) `(loop (a-menos-que ,teste (return nil)) ,@exprs))