anchor.diff:  
   (defun parse-path (str &optional varspecs)
     (flet ((mkvar (name &optional wildcard)
  -           (let* ((spec (intern (string-upcase name) :keyword))
  +           (let* ((spec (intern-keyword name))
                     (parse-fun (getf varspecs spec )))
                (if parse-fun
                    (make-instance (if wildcard
  
positive.code: 
  
  (in-package #:routes)
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;;; interface
  
negative.code:     (if (> (length str) 0)
          (if (char= (char str 0)
                     #\*)
              (list (mkvar (intern-keyword (subseq str 1)) t))
              (let ((pos (position #\: str)))
                (if pos
                    (let ((rest (if (char= (elt str (1+ pos)) #\()
  