anchor.diff:      (let ((recipe-iterator
               (mkiter data-structure
                       (index-space data-structure)
  -                    (make-identity-transformation (dimension data-structure))
  +                    (zero-based-transformation (index-space data-structure))
                       (dimension data-structure))))
         (handler-case
             (loop
  
positive.code:                   (λ
                     (let (args)
                       (iterate (for input-iterator in-vector input-iterators downto 0)
                                (setf args (hcons (funcall input-iterator) args)))
                       (%call (operator node) args)))))
                 ;; eliminate reference nodes entirely
                 (reference
  
negative.code:                             (transformation
                                (composition
                                 (inverse (zero-based-transformation (index-space node)))
                                 transformation)))
                          (setf first-visit? nil)
                          (%reference (%source index) (%indices transformation)))
                        (signal 'iterator-exhausted))))
  