anchor.diff:         ,table)))
   
   ;;; Internal
  -(defgeneric table-cell-spacing (table stream)
  +(defgeneric table-cell-spacing (table)
     (:documentation "Spacing between cells in blocks when the TABLE is
   to be displayed on the STREAM."))
   
  -(defgeneric table-block-spacing (table stream)
  +(defgeneric table-block-spacing (table)
     (:documentation "Spacing between blocks in the TABLE when it is to
   be displayed on the STREAM."))
   
  
positive.code:    (multiple-columns-x-spacing :initarg :multiple-columns-x-spacing)
     (equalize-column-widths :initarg :equalize-column-widths)))
  
  (defmacro formatting-table ((&optional (stream t)
                               &key (x-spacing 0) (y-spacing 0) ; FIXME!!!
                               multiple-columns
                               (multiple-columns-x-spacing nil multiple-columns-x-spacing-supplied-p)
                               equalize-column-widths (move-cursor t)
                               (record-type 'empty-standard-table-output-record)
                               &allow-other-keys)
                              &body body)
    ;; FIXME!!! Possible recomputation
    (when (eq stream t)
      (setq stream '*standard-output*))
    (let ((table (gensym))
          (cursor-old-x (gensym))
          (cursor-old-y (gensym)))
      `(with-new-output-record (,stream ,record-type ,table
                                :x-spacing ,x-spacing
                                :y-spacing ,y-spacing
                                :multiple-columns ,multiple-columns
                                :equalize-column-widths ,equalize-column-widths)
         (multiple-value-bind (,cursor-old-x ,cursor-old-y)
             (stream-cursor-position ,stream)
           (with-output-recording-options (,stream :record t :draw nil)
  
negative.code:   (when (column-output-record-p record)
      (error "Trying to add a column into a row table.")))
  
  (defmethod table-cell-spacing ((table table-of-rows-output-record))
    (slot-value table 'x-spacing))
  (defmethod table-block-spacing ((table table-of-rows-output-record))
    (slot-value table 'y-spacing))
  
  (defmethod table-equalize-column-widths ((table table-of-rows-output-record)
                                           block-infos widths)
  