anchor.diff:      (reverse body)))
   
   (defmacro defparser (grammar &body rules)
  -  (let ((*grammar* grammar))
  +  (let ((*grammar* (make-keyword grammar)))
       (with-atn (transform (grammar->atn rules)) 
         (let ((parser-sym (gensym)))
           `(progn
  
positive.code:         (%print term)))))
  
  (defun parse-str (grammar str rule)
    (parser grammar (lexer grammar (make-string-input-stream str)) rule))
  
negative.code: 
  (def-state-method state->action ((state mimic-state) results)
    (if (null (rest (@state-nexts state))) 
        `(,(fn-name-for-rule (@state-mimic-rule state)) stream)
        (let ((result-sym (gensym)))
          `(multiple-value-bind (,result-sym stream)
               (,(fn-name-for-rule (@state-mimic-rule state)) stream)
  