(rontolisp) docs
← Iteration

doseq

(doseq [binding...] body...)

Runs the body once per combination of the bindings, left to right, and answers nil. Each pair binds a pattern over a collection's seq view (lists, vectors, strings, maps, sets, nil, lazy seqs stepped one element at a time); patterns destructure like let. The :when/:while/:let modifiers trail their binding in order: :when skips the element, :while ends its level's loop (an outer level's ends the whole form), :let binds sequentially. An empty vector runs the body once; over nil it never runs.