anchor.diff:  (defun parse-pick-args (raw-args)
     (let (opts args)
       (dolist (arg raw-args)
  -      (if (string= "-" arg :end2 1)
  -          (push arg opts)
  +      (if (string= "--" arg :end2 2)
  +          (push (string-left-trim "-" arg) opts)
             (push arg args)))
       (setf args (nreverse args))
  -    (let* ((addp (find "--add" opts :test #'string=))
  -           (delp (find "--del" opts :test #'string=))
  -           (showp (find "--show" opts :test #'string=))
  +    (let* ((addp (find "add" opts :test #'string=))
  +           (delp (find "del" opts :test #'string=))
  +           (showp (find "show" opts :test #'string=))
              (category (when (or addp delp showp)
                          (pop args))))
         (values
  
positive.code: 
  (defun find-reference-cycles (catalog start category)
    (dolist (term (lookup-category catalog category))
      (when (string-equal start term)
        (return t))
      (when (find-reference-cycles catalog start term)
        (return t))))
  
  (defun add-pick-choice (module message category choices)
  
negative.code: (defun load-pick-catalog (module)
    (with-open-file (inf (data-path "pick-catalog.lisp")
                         :if-does-not-exist nil)
      (setf (catalog-of module) (if inf (read inf nil) nil))))
  
  (defmodule pick pick-module ("pick")
    (catalog :accessor catalog-of :initform nil))
  