maps all objects between start and test-fn with fn.
(defun map-> (fn start test-fn succ-fn) "maps all objects between start and test-fn with fn." (do ((i start (funcall succ-fn start)) (result nil)) ((funcall test-fn i) (nreverse result)) (push (funcall fn i) result)))Source Context