On this page:

5.11 recur

(recur id ([id expr] ...) expr)
A short-hand recursion construct. The first id corresponds to the name of the recursive function. The parenthesized ids are the function’s arguments, and each corresponding expr is a value supplied for that argument in an initial starting call of the function. The last expr is the body of the function.

More precisely, a recur form

  (recur func-id ([arg-id arg-expr] ...)

is equivalent to

  ((local [(define (func-id arg-id ...)
    arg-expr ...)