anchor.diff:         ((or null index) end))
     (let ((new-beg (+ (beg #1#) start))
       (new-end (+ (beg #1#) (or end (length #1#)))))
  -    (unless (<= new-beg new-end (end #1#))
  +    (unless (common-lisp:<= new-beg new-end (end #1#))
         (error 'bounding-indices-bad-error :length (length #1#) :start start :end end))
       (make (str #1#) :start new-beg :end new-end)))
   
  
positive.code:          (with-slots (length start end) condition
             (format stream "The bounding indices ~A and ~A are bad for a string of length ~A."
                 start end length)))))
   
  (defstruct (charseq (:conc-name ""))
    (str "" :type (simple-array character) :read-only t)
  
negative.code: (defpackage charseq
    (:use :common-lisp)
    (:shadow length subseq = < > <= >= /=)
    (:export bounding-indices-bad-error
         invalid-index-error
         index
         charseq
        
  