anchor.diff:        "standard message metasheep"
         :cloneform ""))))
   
  -(defparameter the-standard-role-metasheep-form
  -  '(clone ()
  -    ((name
  -      'standard-role-metasheep
  -      :cloneform 'standard-role)
  -     (position
  -      0
  -      :cloneform nil)
  -     (message-pointer
  -      nil
  -      :cloneform nil))))
  -
   (defun message-name (message)
     (get-property message 'name))
   (defun (setf message-name) (new-value message)
  
positive.code:   (if (eql =standard-sheep-metasheep= (sheep-metasheep sheep))
        (std-available-messages sheep)
        (available-messages-using-metasheep (sheep-metasheep sheep))))
  ;; TODO
  ;(defun find-message (selector qualifiers participants &optional (errorp t)))
  
  (defun add-readers-to-sheep (readers prop-name sheep)
    (loop for reader in readers
       do (ensure-buzzword :name reader)
       do (ensure-message :name reader
  			:lambda-list '(sheep)
  			:participants (list sheep)
  			:body `(get-property sheep ',prop-name)
  
negative.code:     (remove-messages-with-name-qualifiers-and-participants name qualifiers participants)
      (add-message-to-sheeple name message participants)))
  
  (defun ensure-message (name &rest all-keys
  		       &key
  		       qualifiers
  		       lambda-list
  		       participants
  		       function
  		       body
  		       (documentation ""))
    (when (not (find-buzzword name nil))
      (progn
        (warn 'style-warning)
        (ensure-buzzword
         name)))
    (let* ((buzzword (find-buzzword name))
  	 (target-sheeple (sheepify-list participants))
  	 (message (apply
  		   (if (eql (sheep-metasheep buzzword) =standard-buzzword-metasheep=)
  		       #'generate-sheep-standard-message
  		       #'generate-sheep)
  		   (buzzword-message-metasheep buzzword)
  		   :name name
  		   all-keys)))
      message))
  
  (defun add-message-to-buzzword (message buzzword)
  