anchor.diff:  (defmacro modf-fn (symbol)
     "Expand to the defined Modf function.  Basically, \(MODF-FN SYM) is the
   functional analog of #'\(SETF SYM)."
  -  (symbol-function (modf-name symbol)) )
  +  `(function ,(intern (modf-name symbol) :modf)) )
   
   ;; <<>>=
   (defmacro define-modf-function (name nth-arg (new-val &rest args) &body body)
     "Define a new modf function.  It inverts NAME forms by modifying the NTH-ARG
   term of the arguments of the place form in the MODF macro."
  -  `(progn
  -     (defun ,(intern (modf-name name) :modf) (,new-val ,@args)
  -       ,@body )
  -     (eval-when (:compile-toplevel :load-toplevel :execute)
  -       (setf (gethash ',name *modf-nth-arg*)
  -             ,nth-arg ))))
  +  (setf (gethash name *modf-nth-arg*)
  +        nth-arg )
  +  `(defun ,(intern (modf-name name) :modf) (,new-val ,@args)
  +     ,@body ))
   
   ;; <<>>=
   (defmacro define-modf-method (name nth-arg (new-val &rest args) &body body)
     "Define a new modf method.  It inverts NAME forms by modifying the NTH-ARG
   term of the arguments of the place form in the MODF macro.  This method can
   specialize on any of ARGS."
  -  `(progn
  -     (defmethod ,(intern (modf-name name) :modf) (,new-val ,@args)
  -       ,@body )
  -     (eval-when (:compile-toplevel :load-toplevel :execute)
  -       (setf (gethash ',name *modf-nth-arg*)
  -             ,nth-arg ))))
  +  ;; Side effect in a macro, I know.  How can you do this via EVAL-WHEN if the
  +  ;; rest of the macro-expansion depends on the side effect.
  +  (setf (gethash name *modf-nth-arg*)
  +        nth-arg )
  +  `(defmethod ,(intern (modf-name name) :modf) (,new-val ,@args)
  +     ,@body ))
   
   ;; @\section{The {\em modf} macro}
   
  
positive.code: ;; order.  It recognizes one special form, modf-eval, which instructs it to not
  ;; try to invert the enclosed form and just evaluate it.
  
  (defun container-arg-n (expr)
    (cond ((eql (car expr) 'cl:apply)
           (1+ (gethash (cadadr expr) *modf-nth-arg*)) )
          (t (gethash (car expr) *modf-nth-arg*)) ))
  
  (defun modf-fn-defined? (expr)
    (cond ((eql (car expr) 'cl:apply)
  
negative.code: considered the actual data which will be inverted next."
    `(eval-when (:compile-toplevel :load-toplevel :execute)
       (setf
        (gethash ',name *modf-nth-arg*)
        ,nth-arg
        (gethash ',name *modf-expansions*)
        (lambda (,expr ,val ,new-val)
          ,@body ))))
  
  ;; @\section{Rewrite Rules}
  
  