anchor.diff:        (md-c (find-class 'measurement-domain))
         (mc-c (find-class 'measurement-class))
         (m-c (find-class 'measurement))
  +      ;; FIXME: Portable source locations - see also, SLIME/SWANK
         #+SBCL (src (sb-c:source-location)))
     (labels ((do-def (domain domain-name class print-name print-label name)
   	     (let* ((d 
  
positive.code: 		(multiple-value-bind (d c)
  		    (do-def domain domain-name class print-name print-label  name)
  		  (cons d c))))
  	    '((length "length" meter "metre" "m" :|m|)
  	      (mass "mass" kilogram "kilogram" "kg" :|kg|)
  	      (time "time, duration" second "second" "s" :|s|)
  
negative.code: 
  ;;; %% Angular Measure
  
  (defclass plane-angle (measurement-class)
    ()
    (:metaclass measurement-domain)
    ;; FIXME: #I18N
    (:print-name . "angular measure")
    (:print-label . "angular measure")
    (:symbol . :plane-angle)
    (:base-measure . radian))
  
  (register-measurement-domain (find-class 'plane-angle))
  
  (defclass radian (measurement)
    ()
    (:metaclass plane-angle)
    (:print-name . "radian")
    (:print-label . "rad")
    (:symbol . :|rad|))
  
  (register-measurement-class (find-class 'radian))
  
  ;; (object-print-name (measurement-domain-base-measure (find-class 'plane-angle)))
  ;; => "radian"
  
  (defclass degree (measurement)
    ()
    (:metaclass plane-angle)
    (:base-factor . #.(/ (rational pi) 180) )
    (:print-name . "degree")
    (:print-label . "deg")
  