anchor.diff:  
   (defgeneric text-slice (object start &optional end)
     (:documentation
  -   "Returns a sub-sequence of `object' starting from `start` and terminating at `end'. 
  +   "Returns a sub-sequence of `object' starting from `start` and terminating at `end'.
   
   If end in nil the the sub sequence ends alt the last element of the sequence."))
   
  
positive.code: (defun array-slice (array start &optional (end nil))
    (let* ((new-size (if end
                         (- end start)
                         (length array)))
           (new-fill-pointer
             (cond ((array-has-fill-pointer-p array)
                    (if end
                        new-size
                        (fill-pointer array)))
                   (t nil)))
           (new-array (make-array new-size
                                  :element-type    (array-element-type array)
  
negative.code:    "If object length is bigger than `len', cut the last characters out.
  
  Also replaces the last n characters (where n is the length of
  `truncate-string') of the shortened string with `truncate-string'.
  
  It defaults to ..., but can be nil or the empty string."))
  
  