anchor.diff:              (mapcar #'list (transform-lambda-list object) (transform-argument-types object))
               (transform-result-type object))))
   
  -(defvar *transforms* '())
  +(defvar *transforms* (make-hash-table :test 'equal))
   
   (defmacro define-transform (function lambda-list options &body body)
     (let ((lambda-parameters (loop
  
positive.code:                                                        (:architecture `',rest)))))))
  
  (defun register-transform (transform)
    (push transform *transforms*))
  
  (defun match-optimize-settings (call optimize-qualities)
    (dolist (setting optimize-qualities
  
negative.code:               (arguments call))))
  
  (defun match-transform (call result-type target-architecture)
    (dolist (transform (gethash (ast-name call) *transforms*) nil)
      (when (match-one-transform transform call result-type target-architecture)
        (return transform))))
  
  