anchor.diff:        ;; If an escape character was seen, then do not try to parse the token as
         ;; an number, intern it and return it immediately.
         (seen-escape
  -       (intern token))
  +       (intern token *read-package*))
         ;; Attempt to parse a number.
         (t (or (read-integer token)
                (read-float token)
                (read-ratio token stream)
  -             (intern token))))))
  +             (intern token *read-package*))))))
   
   (defun read-ratio (string stream)
     ;; ratio = sign? digits+ slash digits+
  
positive.code: (defvar *read-suppress* nil)
  
  (defvar *read-lookahead-table*)
  
  (declaim (special *readtable* *standard-readtable*)
           (type readtable *readtable* *standard-readtable*))
  
negative.code:         (when (eql (char token offset) #\.)
            (incf dot-count))))
      (cond
        ;; If no escapes were seen, a double-package marker was seen,
        ;; and the symbol name is empty then we're reading SBCL's
        ;; extended package prefix syntax.
        ((and (not seen-escape)
              package-name
              intern-symbol
              (zerop (length token)))
         (let ((*read-package* (find-package-or-die package-name)))
           (read stream t nil t)))
        ;; Return a symbol immediately if a package marker was seen.
        (package-name
         (if (or intern-symbol (string= "KEYWORD" package-name))
  