anchor.diff:  Works both inside and outside transactions"
     (declare (type simple-tvector tvec)
              (type fixnum index))
  -  ($ (svref (simple-tvector-vec tvec) index)))
  +  ($ (svref tvec index)))
   
   (defun (setf tsvref) (value tvec index)
     "Set the INDEX-th element of simple-tvector TVEC to VALUE.
   Works both inside and outside transactions"
     (declare (type simple-tvector tvec)
              (type fixnum index))
  -  (setf ($ (svref (simple-tvector-vec tvec) index)) value))
  +  (setf ($ (svref tvec index)) value))
   
   
   (defun tsvref-tx (tvec index)
  
positive.code: Works ONLY inside transactions"
    (declare (type simple-tvector tvec)
             (type fixnum index))
    ($-tx (svref (simple-tvector-vec tvec) index)))
  
  (defun (setf tsvref-tx) (value tvec index)
    "Set the INDEX-th element of simple-tvector TVEC to VALUE.
  Works ONLY inside transactions"
    (declare (type simple-tvector tvec)
             (type fixnum index))
    (setf ($-tx (svref (simple-tvector-vec tvec) index)) value))
  
  
  (defun tsvref-notx (tvec index)
  
negative.code: Works ONLY outside transactions"
    (declare (type simple-tvector tvec)
             (type fixnum index))
    ($-notx (svref tvec index)))
  
  (defun (setf tsvref-notx) (value tvec index)
    "Set the INDEX-th element of simple-tvector TVEC to VALUE.
  Works ONLY outside transactions"
    (declare (type simple-tvector tvec)
             (type fixnum index))
    (setf ($-notx (svref tvec index)) value))
  
  
  (defmacro do-simple-tvector ((element) tvec &body body)
  