anchor.diff:  
   (defun lr1-find (item collection)
     "Find an LR(1) item equal to ITEM in COLLECTION, or NIL."
  -  (declare (optimize speed))
  +  (declare (optimize (speed 3) (space 0)))
     (declare (type item item) (type lr1-collection collection))
     (typecase collection
       (list (find item collection :test #'item-lr1-equal-p))
  
positive.code:                     (new-goto (and new-kernel
                                     (make-goto symbol new-kernel))))
                 (when new-kernel
                   (unless (member new-kernel kernels :test #'eq)
                     (add-kernel new-kernel))
                   (unless (member new-goto (kernel-gotos kernel)
                                   :test #'goto-equal-p)
  
negative.code:   (subseq (item-derives item) 0 (item-position item)))
  
  (defun item-dot-right (item &optional (n 0))
    (declare (type signed-index n) #+CMU (optimize ext:inhibit-warnings))
    (nthcdr (+ n (item-position item)) (item-derives item)))
  
  (defun item-shift (item &optional (n 1))
  