anchor.diff:               (bool? (lst [warning]))
                (bool? (lst [modify])))))
            (options (list (real-path) 1 "" '() nil nil true true true true nil))
  +         (zero-or-one? (lambda (num) (or (zero? num) (= num 1))))
  +         (matches-opt? (lambda (opt var) (zero-or-one? (find opt var))))
            (arguments
             (if (string? arguments)
                 (parse arguments)
  
positive.code:                       ;; No characters after the equal sign (no directory specified)
                        (setq (options [backup-dir]) (backup-dir-pair 1))
                      (setq (options [backup-dir]) (join (rest lst) "=")))))
                (case curr
                  ("-nc" (setq (options [compact]) nil))
                  ("--no-compact" (setq (options [compact]) nil))
                  ("-nb" (setq (options [backup]) nil))
                  ("--no-backup" (setq (options [backup]) nil))
                  ("-nm" (setq (options [modify]) nil))
                  ("--no-modify" (setq (options [modify]) nil))
                  ("-uni" (setq (options [uniform]) true))
                  ("--uniform" (setq (options [uniform]) true))
                  ("-ic" (setq (options [indent-comments]) true))
                  ("--indent-commens" (setq (options [indent-comments]) true))
                  ("--no-warning" (setq (options [warning]) nil))
                  ("--nw" (setq (options [warning]) nil))
                  ("--help" (print-help))
                  ("--h" (print-help))
                  ("-h" (print-help)))
                )))
        options))))
  
  
negative.code:               (unless (empty? curr)
                  (push curr (options [files])))
              (let ((indent-pair
                     (if (or (and (not (matches-opt? "-default-indent" prev))
                                  (matches-opt? "-default-indent" curr))
                             (and (not (matches-opt? "-di" prev))
                                  (matches-opt? "-di" curr)))
                         ;; The "--backup-dir" string is at the end of the arg list
                         (list curr "")
                       (if (or (matches-opt? "-di" prev)
                               (matches-opt? "-default-indent" prev))
                           (list prev curr)
                         (list "" ""))))
                    (backup-dir-pair
                     (if (or (and (not (matches-opt? "-backup-dir" prev))
                                  (matches-opt? "-backup-dir" curr))
                             (and (not (matches-opt? "-bd" prev))
                                  (matches-opt? "-bd" curr)))
                         ;; The "--backup-dir" string is at the end of the arg list
                         (list curr "")
                       (if (or (matches-opt? "-bd" prev)
                               (matches-opt? "-backup-dir" prev))
                           (list prev curr)
                         (list "" ""))))
                    (dialect-pair
  