Tu as oublié (mais c'est peut-être volontaire) la définition avec fold, tirée de la doc en ligne


(define reverse
(lambda (l)
(foldl cons '() l)))