anchor.diff:           (princ expanded-el result))))
   
   (defun text-from-grammar (grammar rule-name)
  -  (let ((matching-rules (remove rule-name grammar :test-not #'eql :key #'first)))
  +  (let ((matching-rules (gethash rule-name grammar)))
       (if matching-rules
  -        (reduce-from-grammar grammar (cddr (random-elt matching-rules)))
  +        (reduce-from-grammar grammar (random-elt matching-rules))
           ;; return just the symbol name if no definitions were found
           (symbol-name rule-name))))
   
  
positive.code:         (build-rule-expansions (reverse rule-body)))))
     grammar))
  
  (defun load-grammar (path)
    (let ((*package* (find-package "ORCA")))
      (expand-grammar
       (with-open-file (inf path)
         (loop
            for rule = (read inf nil)
  
negative.code: 
  (defcommand manage (message directp &rest target)
    (let ((grammar (load-grammar "/home/dlowe/play/orca/data/manage-grammar.lisp")))
      (setf (gethash 'person grammar)
            (list (list
             (if target
                 (format nil "~{~a~^ ~}" target)
                 "resops"))))
      (reply-to message (grammar-generate grammar))))
  
  (defcommand brag (message directp)
    (reply-to message
  