Repeatedly executes body while test expression is true. Presumes
some side-effect will cause test to become false/nil. Returns nil
Source
(defmacrowhile"Repeatedly executes body while test expression is true. Presumes
some side-effect will cause test to become false/nil. Returns nil"{:added"1.0"}[test&body]
`(loop []
(when ~test
~@body
(recur))))