anchor.diff:    (%write-string-to-buffer-stream stream string start end))
   
   (defmethod trivial-gray-streams:stream-terpri ((stream buffer-output-stream))
  -  (prog1 (buffer-insert-newline (buffer-output-stream-buffer stream)
  -                                (buffer-output-stream-linum stream)
  -                                (buffer-output-stream-charpos stream))
  -    (buffer-output-stream-refresh stream)
  -    (incf (buffer-output-stream-linum stream))
  -    (setf (buffer-output-stream-charpos stream) 0)))
  +  (prog1 (marker/insert-char (buffer-output-stream-marker stream)
  +                             #\newline)
  +    (buffer-output-stream-refresh stream)))
   
   (defmethod trivial-gray-streams:stream-finish-output ((stream buffer-output-stream))
     (buffer-output-stream-refresh stream))
  
positive.code:   (make-buffer-stream-instance 'buffer-output-stream
                                 buffer point interactive-update-p))
  
  (defun buffer-output-stream-point (stream)
    (make-point (buffer-output-stream-linum stream)
                (buffer-output-stream-charpos stream)))
  
  (defmethod stream-element-type ((stream buffer-output-stream))
    'line)
  
  (defmethod trivial-gray-streams:stream-line-column ((stream buffer-output-stream))
    (buffer-output-stream-charpos stream))
  
  (defun buffer-output-stream-refresh (stream)
    (when (buffer-output-stream-interactive-update-p stream)
      (display-buffer (buffer-output-stream-buffer stream))
      (dolist (window (get-buffer-windows (buffer-output-stream-buffer stream)))
        (point-set (buffer-output-stream-point stream) (window-buffer window))
        (redraw-display-window window t)))
    nil)
  
  (defmethod trivial-gray-streams:stream-fresh-line ((stream buffer-output-stream))
    (unless (zerop (buffer-output-stream-charpos stream))
      (trivial-gray-streams:stream-terpri stream)))
  
  (defmethod trivial-gray-streams:stream-write-byte ((stream buffer-output-stream) byte)
  
negative.code: 
  (defmethod trivial-gray-streams:stream-write-char ((stream buffer-output-stream) char)
    (prog1 char
      (marker/insert-char (buffer-output-stream-marker stream)
                          char)))
  
  (defun %write-string-to-buffer-stream (stream string start end &key)
    (marker/insert-string (buffer-output-stream-marker stream)
                          (subseq string start end))
    string)
  
  (defun %write-octets-to-buffer-stream (stream octets start end &key)
    (let ((octets (subseq octets start end)))
  