anchor.diff:    ;; FIXME!!! Possible recomputation
     (when (eq stream t)
       (setq stream '*standard-output*))
  -  (let ((table (gensym "TABLE"))
  -        (cursor-old-x (gensym "CURSOR-OLD-X-"))
  -        (cursor-old-y (gensym "CURSOR-OLD-Y-")))
  +  (with-gensyms (table cursor-old-x cursor-old-y)
       `(with-new-output-record
            (,stream ,record-type ,table
                     :x-spacing (parse-space ,stream ,(or x-spacing #\Space)
  
positive.code:   (declare (type symbol stream))
    (when (eq stream 't)
      (setq stream '*standard-output*))
    (let ((parent (gensym)))
      `(progn
         (let ((,parent (stream-current-output-record ,stream)))
           (assert (table-output-record-p ,parent)))
  
negative.code:          (adjust-table-cells ,table ,stream)
           (setf (output-record-position ,table)
                 (values ,cursor-old-x ,cursor-old-y))
           (if ,move-cursor
               ;; FIXME!!!
               #+ignore
               (setf (stream-cursor-position ,stream)
                     (values cursor-new-x cursor-new-y))
               #-ignore
               nil
               (setf (stream-cursor-position ,stream)
                     (values ,cursor-old-x ,cursor-old-y)))
           (replay ,table ,stream)))))
  
  ;;; Internal
  (defgeneric table-cell-spacing (table)
  