anchor.diff:  (defun keymap-p (object)
     (typep object 'keymap))
   
  -(deftype keyspecs-type ()               ; TODO: Rename to KEYDESC?
  +;; "keyspec" is better then "keydesc" since the strings are well specified,
  +;; while a "description" could be anything.
  +(deftype keyspecs-type ()
     `(satisfies keyspecs->keys))
   
   ;; We need a macro to check that bindings are valid at compile time.
  -;; This is because most Common Lisp implementations or not capable of checking
  +;; This is because most Common Lisp implementations are not capable of checking
   ;; types that use `satisfies' for non-top-level symbols.
   ;; We can verify this with:
   ;;
  
positive.code:     new-key))
  
  (defmethod fset:compare ((x key) (y key))
    "Needed to user the KEY structure as keys in Fset maps."
    (if (key= x y)
        :equal
        :unequal))
  
negative.code:                     (modifier-shortcut string-or-modifier2)))))))
  
  (defmethod fset:compare ((x modifier) (y modifier))
    "Modifier sets need this comparison function to be ordered, so that (\"C\"
  \"M\") is the same as (\"M\" \"C\")."
    (fset:compare-lexicographically (modifier-string x) (modifier-string y)))
  
  (defvar +control+ (make-modifier :string "control" :shortcut "C"))
  