(rontolisp) docs
← Syntax and definition

letfn

(letfn [(f [params...] body...)+] body...)

Binds mutual local functions and evaluates the body, which may call them. Every name is visible in every entry -- siblings call each other -- and in the body; an entry's name is a function value too. Each entry lowers like a named-fn clause (parameters destructure the same way, several arities dispatch the same way), so an entry may recur to itself and the body calls each entry directly. An empty binding vector is just the body.