anchor.diff:                          :base-measure class
   			:print-name domain-name
   			:print-label domain-name
  -			g:direct-superclasses (list mc-mc)
  +			:direct-superclasses (list mc-mc)
   			:metaclass md-mc
   			#+SBCL :definition-source #+SBCL src))
                       (b-d ;; base measurement class for DOMAIN
  
positive.code: 	   (n (position s %measurement-classes%
  			:test #'eq
  			:key #'measurement-symbol)))
        (cond 
  	(n (unless (eq (aref %measurement-classes% n) %c)
               (simple-style-warning 
  
negative.code: (defclass base-measurement-class (measurement-class)
    ())
  
  (defmethod measurement-domain-base-measure ((instance base-measurement-class))
    (values instance))
  
  (defclass derived-measurement-class (measurement-class)
    ())
  
  (defmethod measurement-domain-base-measure ((instance derived-measurement-class))
    ;; example: derived-length
    (labels ((frob ()
               (dolist (c (class-precedence-list 
                           (class-of instance))
                        nil)
                 (let ((bm
                        (when (typep c 'measurement-domain)
                          (measurement-domain-base-measure c))))
                   (when bm (return bm))))))
      (handler-case 
          (cond 
            ((next-method-p) (or (call-next-method) (frob)))
            (t (frob)))
        ;; FIXME: KLUDGE! Hairy subtle kludge.
        ;;
        ;; THIS METHOD SHOULD NOT HAVE TO WORK AROUND UNBOUND SLOTS (FIXME)
        (unbound-slot ()
          (frob)))))
  
  ;;; %% Initialize fundamental measurement domains and base unit classes
  
  