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:                    (parser::parser-error stream-rest :cons start-rule))
                   res)))
  
             (defmethod parser ((grammar (eql ',grammar)) stream &optional (start-rule ',(@extra :start-rule)))
               (,parser-sym stream start-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)
  