anchor.diff:                  (go ,recur-from))))
            ,res))))
   
  -
   ;;not properly tail recursive....maybe needs to be compiled.
   ;; (defmacro with-recur (args &rest body)
   ;;   (let* ((recur-sym  (intern "RECUR")) ;HAVE TO CAPITALIZE!
  
positive.code: ;;            (go recur-from))))
  ;;     res))
  
  
  ;;Beginnings of a foundation for loop/recur,
  ;;and automated (recur ..) constructs in functions.
  (defmacro with-recur (args &rest body)
    (let* ((recur-sym  (intern "RECUR")) ;HAVE TO CAPITALIZE!
           (local-args (mapcar (lambda (x)
                                 (intern (symbol-name x))) args))
           (res        (gensym "res"))
           (continue?  (gensym "continue"))
           (recur-from (gentemp "recur-from"))
           (recur-args (mapcar (lambda (x) (gensym (symbol-name x))) local-args
                               ))
           (pairs      (pairlis local-args recur-args))
           (bindings   (mapcar (lambda (xy)
                                 `(setf ,(car xy) ,(cdr xy))) pairs)))
      `(let ((,continue? t)
             (,res)
             ;; ,@(mapcar (lambda (xy)
             ;;             `(,(car xy) ,(cdr xy))) pairs)
             )
         (flet ((,recur-sym ,recur-args
                  (progn ,@bindings
  
negative.code: ;;testing...
  (comment 
   (defun custom-loop2 (x bound)
     (with-recur (x x)
       (if (>= x bound)
           x        
           (recur (1+ x)))))
  