anchor.diff:  
   (defun step (world)
     (loop
  -     for index below (array-total-size  *world*)
  -     for cell = (row-major-aref *world* index)
  +     for index below (array-total-size world)
  +     for cell = (row-major-aref world index)
        do
          (when (alive? cell)
  -         (case (count (get-live-neighbours index *world*))
  +         (case (length (get-live-neighbours index world))
              ((2 3) (setf cell 1))
              (otherwise (setf cell 0))))
          (when (dead? cell)
  -         (case (count (get-live-neighbours index *world*))
  +         (case (length (get-live-neighbours index world))
              (3 (setf cell 1))
              (otherwise (setf cell 0))))))
   
  
positive.code:   (let ((row (floor (/ index *world-width*))))
      (list (- index (* row *world-width*))  row)))
  
  
  (defun print-world (world))
  
negative.code: 
  (defun get-neighbours (index array)
    (loop for pair in (get-neighbouring-positions index)
       collect (aref array (first pair) (second pair))))
  
  (defun get-neighbouring-positions (index)
    (remove-if #'pair-out-of-bounds
  