anchor.diff:    (let ((x 0)
           (y 0))
       (double-setf-SAFER x y (+ x 100))
  -    (assert-equal x ____)
  -    (assert-equal y ____)))
  +    (assert-equal x 100)
  +    (assert-equal y 100)))
   
   
   ;; ----
  
positive.code:   "log-form does not interfere with the usual return value"
    (assert-equal 1978 (log-form (* 2 23 43)))
    "log-form records the code which it has been passed"
    (assert-equal ___ (length *log*))
    (assert-equal ___ (first *log*))
    "macros evaluating to more macros is ok, if confusing"
    (assert-equal 35 (log-form (log-form (- 2013 1978))))
    (assert-equal 3 (length *log*))
  
negative.code: (defmacro log-form-with-value (form)
    "records the body form, and the form's return value
     to the list *log-with-value* and then evalues the body normally"
    `(let ((logform ',form)
           (retval ,form))
       (push (list :form logform :value retval)
             *log-with-value*)
       retval))
  
  
  