anchor.diff:      (intern (format nil "~{~A~^.~}" symbols)
               (symbol-package (first symbols)))))
   
  -(defun split-qualified-symbol-name (symbol)
  -  "Given a SYMBOL named PKG::SYMBOL1.SYMBOL2....SYMBOLN, return a list of symbols
  -   (PKG::SYMBOL1.SYMBOL2... PKG::SYMBOLN) splitting on the last dot (#\.) in the symbol name."
  -  (let* ((symbol-string (string symbol))
  -         (pkg (symbol-package symbol))
  -         (symbol-strings (split-last symbol-string)))
  -    (mapcar (lambda (string)
  -              (intern string pkg))
  -            symbol-strings)))
  -
   ;;; Collectors, etc
   
   (defun proto-slot-function-name (proto-type slot function-type)
  
positive.code: 
  ;;; String utilities
  
  (defun starts-with (string prefix &key (start 0))
    "Returns true if STRING matches PREFIX starting at index START (case insensitive)."
    (and (i>= (length string) (i+ start (length prefix)))
         (string-equal string prefix :start1 start :end1 (i+ start (length prefix)))
         prefix))
  
  (defun ends-with (string suffix &key (end (length string)))
    "Returns true if STRING matches SUFFIX ending at index END (case insensitive)."
    (and (i>= end (length suffix))
         (string-equal string suffix :start1 (i- end (length suffix)) :end1 end)
         suffix))
  
  (defun strcat (&rest strings)
    "Return the concatenation of STRINGS. If no arguments are passed, the empty string is returned."
  
negative.code:   `(setf ,place (append ,place ,tail)))
  
  
  ;;; Types
  
  ;; A parameterized list type for repeated fields
  