CCCPaste

elisp until macro

(defmacro until (test &body body)
  "Implement the UNTIL loop."
  (let ((start (gensym)))
    `(cl-tagbody
      ,start
      ,@body
      (unless ,test
        (go ,start)))))