Comme promis voici une réalisation de la procédure reverse qui ne fait pas appel à la procédure append. En outre elle est itérative.
(define (mon-reverse L)
(define (epuise L dest)
(if (null? L)
dest
(epuise (cdr L) (cons (car L) dest))))
(epuise L '()))