anchor.diff:               (return (setf  (sas-cursor-value cursor) value)))))
   
   
  -(defmethod fill ((self sequential-access-sequence) item &key (start 0) (end nil))
  +(define-method fill ((self sequential-access-sequence) item &key (start 0) (end nil))
     (loop
        :for cursor = (sas-head self) :then (sas-cursor-next cursor)
  -     :for index :from 0 :below index
  +     :for index :from start :below end
        :do (cond
              ((sas-cursor-end-p cursor) (return self))
              ((< index start))
              ((and end (<= end index))  (return self))
              (t                         (setf  (sas-cursor-value cursor) item)))))
   
  -(defmethod subseq ((self sequential-access-sequence) start &optional (end nil))
  +(define-method subseq ((self sequential-access-sequence) start &optional (end nil))
     (loop
        :with sub = (make-instance (class-of self))
        :with dst = (sas-head sub)
  -     :for  src = (sas-head self) :then (sas-cursor-next cursor)
  -     :for  index :from 0 :below index
  +     :for  src = (sas-head self) :then (sas-cursor-next src)
  +     :for  index :from start
        :do (cond
              ((sas-cursor-end-p src)    (return sub))
              ((< index start))
              ((and end (<= end index))  (return sub))
              (t  (setf (sas-cursor-value dst) (sas-cursor-value src))))))
   
  -(defmethod (setf subseq) (value sequence start &optional (end nil)))
  +(define-method (setf subseq) (value sequence start &optional (end nil))
  +  (declare (ignore value sequence start end))
  +  (not-implemented-yet  (setf subseq)))
   (define-forward map           (result-type function sequence &rest sequences))
   (define-forward map-into      (result-sequence function &rest sequences))
   (define-forward length        (sequence))
  
positive.code: ;;       direct-access-sequence
  ;;       sequential-access-sequence
  
  (defclass user-sequence ()
    ()
    (:documentation "Abstract class for user defined sequeneces."))
     
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  
negative.code:        :finally (return copy))))
  
  ;;; primitives:
  ;;; (define-method elt ((self direct-access-sequence) index) )
  ;;; (define-method (setf elt) (value (self direct-access-sequence) index)   value)
  
  
  ;;;---------------------------------------------------------------------
  