anchor.diff:  ;;; implementation, a common AI planning problem. The monkey's objective is to
   ;;; find and eat some bananas.
   
  -;;; $Id: mab-clos.lisp,v 1.2 2001/04/18 14:05:08 youngde Exp $
  +;;; $Id: mab-clos.lisp,v 1.3 2001/04/18 17:41:23 youngde Exp $
   
   (in-package "LISA-USER")
   
  
positive.code:              :initform 'green-couch)
     (on-top-of :initarg :on-top-of
                :initform 'floor)
     (holding :initarg :holding
              :initform 'nothing)))
  
  
negative.code:   (?thing (thing (name ?name)))
    =>
    (format t "Monkey eats the ~A.~%" ?name)
    (modify ?monkey (holding blank) (satisfied t))
    (retract ?goal)
    (retract ?thing))
  
  (defrule monkey-is-satisfied ()
    (monkey (satisfied t) (:object ?monkey))
    =>
    (format t "Monkey is satisfied: ~S~%" ?monkey))
  
  ;;; startup rule...
  
  