anchor.diff:                             :fill-pointer 0)))
          (defmethod control-listeners ((control ,name))
            (,(control-listeners-name name) control)))))
  +
  +
  +;; (define-logical-control (double-click :decays t)
  +;;     ((last-press nil integer))
  +;;   ((button boolean-state)
  +;;    (when (< (- timestamp last-press) 10)
  +;;      (fire t))
  +;;    (setf last-press timestamp)))
  
positive.code:        (deftclass (,name (:conc-name nil)
                           (:constructor ,constructor))
           ;; the state for this control
           (,(control-data-acc-name name) ,initform :type ,type)
           ;; the details for things listening to this control
           (,(control-container-slot-name name) :unknown-slot :type symbol)
           (,(control-container-index-name name) -1 :type fixnum)
  
negative.code:                    (values))))))))))
  
  (defmacro define-logical-control
      ((name &key (type 'boolean) (initform nil) decays) internal-slots
       &body control-forms)
    (assert control-forms () "SKITTER: ~a must have at least one control form"
            name)
  