anchor.diff:    (declare (type iobuf iobuf))
     (setf (iobuf-start iobuf) 0
           (iobuf-end iobuf)   0))
  + 
  -(defun iobuf-copy-data-to-start (iobuf)
  -  (declare (type iobuf iobuf))
  -  (cffi:with-pointer-to-vector-data (ptr (iobuf-data iobuf))
  -    (nix:memmove ptr (cffi:inc-pointer ptr (iobuf-start iobuf))
  -                 (iobuf-length iobuf)))
  -  (setf (iobuf-end iobuf) (iobuf-length iobuf))
  -  (setf (iobuf-start iobuf) 0))
   
  -;;; BREF, (SETF BREF) and BUFFER-COPY *DO NOT* check boundaries
  +;;;
  +;;; UNSAFE functions which *DO NOT* check boundaries
   ;;; that must be done by their callers
  +;;;
  +
   (defun bref (iobuf index)
     (declare (type iobuf iobuf)
              (type iobuf-index index))
  
positive.code:   (declare (type iobuf iobuf))
    (- (iobuf-end iobuf)
       (iobuf-start iobuf)))
  
  (defun iobuf-start-pointer (iobuf data-pointer)
    (declare (type iobuf iobuf)
             (type cffi:foreign-pointer))
    (inc-pointer data-pointer (iobuf-start iobuf)))
  
  (defun iobuf-end-pointer (iobuf data-pointer)
    (declare (type iobuf iobuf)
             (type cffi:foreign-pointer))
    (inc-pointer data-pointer (iobuf-end iobuf)))
  
  (defun iobuf-empty-p (iobuf)
    (declare (type iobuf iobuf))
  
negative.code: 
  (define-constant +bytes-per-iobuf+ 4096)
  
  (defun make-iobuf (&optional (size +bytes-per-iobuf+))
    (let ((b (%make-iobuf)))
      (setf (iobuf-data b) (make-array size :element-type 'ub8)
            (iobuf-size b) size)
      (values b)))
  
  