anchor.diff:        ;; nreverse it again and count
         (loop until (null reversed)
   	    while (plusp count)
  -	    do (unless (eql (funcall key (car reversed)) olditem)
  +	    do (unless (eql olditem (funcall key (car reversed)))
   		 (setf (car reversed) newitem)
   		 (decf count))
   	       (let ((temp (cdr reversed)))
  
positive.code: 	       :in-sequence list))
        (loop until (null reversed)
  	    while (plusp count)
  	    do (when (eql (funcall key (car reversed)) olditem)
  		 (setf (car reversed) newitem)
  		 (decf count))
  	       (let ((temp (cdr reversed)))
  
negative.code:   list)
  
  (defun |nsubstitute seq-type=list end=other test-not=other count=nil key=identity|
      (newitem olditem list start end test-not)
    (let ((remaining list)
  	(start-bis start)
  	(end-start (- end start)))
  