anchor.diff:            (each $next iters))))
     into)
   
  -(defclass <number-iter> (i max))
  +(defclass <number-iter> ()
  +  (i
  +   max))
   
   (defun <number-iter> (max)
     (let ((iter (make <number-iter>)))
  
positive.code: (defmethod add ((list <list>) elt)
    (list-add list elt))
  
  (defclass <list-iter> (list i))
  
  (defun <list-iter> ((list <list>))
    (let ((iter (make <list-iter>)))
  
negative.code: (defmacro make (class-name)
    #`(make-instance (class ,class-name)))
  
  (defmacro defclass (class-name &optional (supers #'()) (slots #'()))
    (let ((superclass (if (compound-empty? supers) #f (compound-elt supers 0))))
      #`(progn
          (defvar (class ,class-name) (make-class))
          ,(if superclass 
  