anchor.diff:  
   (defclass process ()
     ((pid    :initarg :pid :reader process-pid)
  +   (reaped :initform nil)
      (stdin  :initform nil :reader process-stdin)
      (stdout :initform nil :reader process-stdout)
      (stderr :initform nil :reader process-stderr)))
  
positive.code:                                    :environment environment
                                     :stdout :pipe
                                     :stderr :pipe)))
        (values (process-wait process)
                (slurp-stream-into-string (process-stdout process))
                (slurp-stream-into-string (process-stderr process))))))
  
  (defun process-wait (process)
    (nth-value 1 (isys:waitpid (process-pid process) 0)))
  
  (defun process-kill (process &optional (signum :sigterm))
    (isys:kill (process-pid process) signum))
  
negative.code:           err (and stderr (make-instance 'iolib.streams:dual-channel-gray-stream :fd stderr)))))
  
  (defmethod close ((process process) &key abort)
    (with-slots (pid reaped stdin stdout stderr)
        process
      (when stdin  (close stdin :abort abort))
      (when stdout (close stdout :abort abort))
      (when stderr (close stderr :abort abort))
      (unless reaped
        (isys:waitpid pid (if abort isys:wnohang 0)))
      (setf pid nil stdin nil stdout nil stderr nil)))
  
  (defmethod print-object ((o process) s)
  