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: (defmacro make (class-name)
    #`(make-instance (class ,class-name)))
  
  (defmacro defclass (name-and-super &optional (slots #'()))
    (let ((class-name nil)
          (superclass nil))
      (if (symbol? name-and-super)
          (progn (setf class-name name-and-super)
                 (setf superclass nil))
          (progn (setf class-name (compound-elt name-and-super 0))
                 (setf superclass (compound-elt name-and-super 1))))
      #`(progn
          (defvar (class ,class-name) (make-class))
          ,(if superclass 
  
negative.code: (defclass number)
  (set-superclass (class real) (class number))
  (set-superclass (class rational) (class real))
  (defclass integer (rational))
  (set-superclass (class small-integer) (class integer))
  (set-superclass (class big-integer) (class integer))
  
  