anchor.diff:      :reader id-of
       :type fixnum
       :documentation "Unique or not, subclasses decide.")))
  +
  +
  +(defclass simulated (identifiable)
  +  ((description
  +    :initarg :description
  +    :initform "simulated object"
  +    :accessor description-of
  +    :type string
  +    :documentation "Description of this object.")
  +
  +   (effects
  +    :initform ()
  +    :accessor effects-of
  +    :type list
  +    :documentation "Set of events this object is causing.")))
   
   
   (defclass event (identifiable)
  
positive.code: (defpackage :org.altervista.rjack.desim
    (:nicknames :ds)
    (:use :common-lisp)
    (:export :event
  	   :object
  	   :world
  	   :run))
  
  (in-package :ds)
  
  
negative.code:     :documentation "Past instances of this world, newer first.")
  
     (events
      :initarg :events
      :initform (error "missing :events")
      :accessor events-of
      :type list
      :documentation "World's events.")))
  
  
  (defgeneric clone (object)
    (:documentation "Return a shallow copy of object."))
  
  
  (defgeneric run (world event)
  