anchor.diff:                 (reset-token-iterator)
                  (go start))))))))
   
  -(defparameter *enable-lisp-splice* nil)
  +(defparameter *enable-lisp-splice* nil
  +  "SHCL should permit splicing in lisp forms.
  +
  +Do not set this variable directly.  `main' will set this based on the
  +arguments it receives.")
   (defparameter *debug* nil)
  -(defparameter *help* nil)
  +(defparameter *help* nil
  +  "SHCL should display some basic help information and then exit.
  +
  +Do not set this variable directly.  `main' will set this based on the
  +arguments it receives.")
   
   (defparameter *options*
     '((*enable-lisp-splice* nil "Extend shell language to support splicing lisp expressions")
       (*debug* nil "Run a SWANK server")
  -    (*help* nil "Show list of options")))
  +    (*help* nil "Show list of options"))
  +  "The set of options recognized by `main'.  See `cl-cli:parse-cli'.")
   
   (defmacro with-options ((argv &key (options '*options*)) &body body)
  +  "Parse options and establish dynamic bindings for them.
  +
  +See `cl-cli:parse-cli'."
     (let ((vars (gensym "VARS"))
           (values (gensym "VALUES"))
           (command (gensym "COMMAND"))
  
positive.code: 
  (optimization-settings)
  
  (defparameter *shell-readtable* +standard-shell-readtable+)
  
  (defparameter *fresh-prompt* t)
  
  (defun main-prompt ()
    (let ((result (if *fresh-prompt* "shcl> " "> ")))
      (setf *fresh-prompt* nil)
      result))
  
  (defun main-token-iterator (stream form-queue)
    (lookahead-iterator-wrapper
     (bake-tokens
      (make-iterator ()
  
negative.code:     form-queue)))
  
  (defun restartable-command-iterator (stream form-queue)
    "Return an iterator that emits the fully parsed commands that
  `stream' contains.
  
  Tokens are read using `main-token-iterator', and bake forms are placed
  in `form-queue'.  See `shcl/core/baking:bake-tokens'."
    (let* ((tokens (main-token-iterator stream form-queue))
           (commands (command-iterator tokens)))
      (labels
  