anchor.diff:         finally (return (mapcar #'parse-integer ints))))
   
   (defun read-puzzle (fname)
  +  "Read a sudoku puzzle from disk."
  +
     (log:trace "entry")
     (with-open-file (s fname :direction :input)
              (loop for line = (read-line s nil nil)
  
positive.code:               collect line into lines
                finally (return (string-to-ints (concat-strings lines))))))
  
  (defmacro aset (array subscript value)
    `(setf (aref ,array , subscript) ,value))
  
negative.code:              (format s "~a" item))))))
  
  (defun string-to-ints (string)
    "Converts a string to a list of single digit ints."
  
    (log:trace "entry")
    (loop for c across string
  