anchor.diff:    ((unread-char
       :initform nil
       :accessor buffer-input-stream-unread-char)
  -   (marker
  -    :initarg :marker
  -    :accessor buffer-stream-marker)))
  -
  -(defun make-buffer-input-stream (&optional (marker (current-point)))
  +   (point
  +    :initarg :point
  +    :accessor buffer-stream-point)))
  +
  +(defun make-buffer-input-stream (&optional (point (current-point)))
     (make-instance 'buffer-input-stream
  -                 :marker (copy-point marker :temporary)))
  +                 :point (copy-point point :temporary)))
   
   #+nil
   (defmethod trivial-gray-streams::close ((stream buffer-input-stream) &key abort)
     (declare (ignore abort))
  -  (delete-point (buffer-stream-marker stream))
  +  (delete-point (buffer-stream-point stream))
     t)
   
   (defmethod trivial-gray-streams:stream-read-char ((stream buffer-input-stream))
  
positive.code:                   (setf (buffer-input-stream-unread-char stream) nil)
                    character)
                   (t
                    (character-at (buffer-stream-marker stream))))
        (character-offset (buffer-stream-marker stream) 1))))
  
  (defmethod trivial-gray-streams:stream-unread-char ((stream buffer-input-stream) character)
    (setf (buffer-input-stream-unread-char stream) character)
    (character-offset (buffer-stream-marker stream) -1)
    nil)
  
  #+nil
  
negative.code:   nil)
  
  (defmethod trivial-gray-streams:stream-fresh-line ((stream buffer-output-stream))
    (unless (zerop (point-charpos (buffer-stream-point stream)))
      (trivial-gray-streams:stream-terpri stream)))
  
  (defmethod trivial-gray-streams:stream-write-byte ((stream buffer-output-stream) byte)
  