anchor.diff:  ;;;;;;;;;;;;;;;;;;;;
   
   (defun %write-n-bytes (buf fd nbytes &optional timeout)
  +  (declare (type stream-buffer buf))
     (let ((bytes-written 0))
       (flet ((write-once ()
                (let ((num (handler-case
  
positive.code: (defmethod stream-write-char ((stream dual-channel-gray-stream)
                                (character character))
    (%flush-obuf-if-needed stream)
    (if (eql character #\Newline)
        (%write-line-terminator stream (ioenc:ef-line-terminator (external-format-of stream)))
        ;; FIXME: avoid consing a string here. At worst, declare it dynamic-extent
        (stream-write-string stream (make-string 1 :initial-element character))))
  
negative.code:     (etypecase seq
        (ub8-sarray
         (%write-simple-array-ub8 stream seq start end))
        (ub8-vector
         (%write-vector-ub8 stream seq start end))
        (vector
         (%write-vector stream seq start end)))))
  