anchor.diff:                        (dotimes (i n)
                           (setf (elt sequence-1 (+ start1 i)) (elt sequence-2 (+ start2 i)))))))))))
     sequence-1)
  +
  +(declaim (inline replace))
  +(defun replace (sequence-1 sequence-2 &key (start1 0) end1 (start2 0) end2)
  +  (replace-known-args sequence-1 sequence-2 start1 end1 start2 end2))
   
   (defmacro object-type-dispatch (object &body body)
     "Fast CASE on (%OBJECT-TAG object)"
  
positive.code: (defun notevery (predicate first-sequence &rest more-sequences)
    (not (apply 'every predicate first-sequence more-sequences)))
  
  (defun replace (sequence-1 sequence-2 &key (start1 0) end1 (start2 0) end2)
    (unless end1 (setf end1 (length sequence-1)))
    (unless end2 (setf end2 (length sequence-2)))
    (assert (<= 0 start1 end1 (length sequence-1)))
  
negative.code:     (error "TEST and TEST-NOT specified")))
  
  (defun length (sequence)
    (cond ((null sequence) 0)
          ((consp sequence)
           (or (list-length sequence)
               (error 'simple-type-error
                      :expected-type 'sequence
                      :datum sequence
                      :format-control "List ~S is circular."
                      :format-arguments (list sequence))))
          ((%simple-1d-array-p sequence)
           (%object-header-data sequence))
          ((and (complex-array-p sequence)
                (eql (%object-header-data sequence) 1)) ; rank 1
           (let ((fill-pointer (%object-ref-t sequence +complex-array-fill-pointer+)))
             (or fill-pointer
                 (%object-ref-t sequence +complex-array-axis-0+))))
          (t
           (error 'type-error
                  :expected-type 'sequence
                  :datum sequence))))
  
  (defun elt (sequence index)
    (check-type sequence sequence)
  