clojure si-alors-sinon?

Ce devrait être une question triviale.
je suis nouveau sur Clojure et l'écriture de cette si-alors-sinon basée sur: http://clojure.org/special_forms#Special%20Forms--%28if%20test%20then%20else?%29

Cependant, je reçois cette erreur:

java.lang.Exception: Trop d'arguments pour s' (NO_SOURCE_FILE:424)

//This code has infinite recursion bugs; but it should compile!
(defn sumdown [sum x]
    (
    if (foo x) 
     (do
     (recur (+ sum x) (dec x))
     )
     else do(
        (recur (+ sum x) (dec x))
     )

     )
) 

source d'informationauteur Asad Iqbal