anchor.diff:  
   (in-package "COM.INFORMATIMAGO.SUDOKU-SOLVER")
   
  +
  +
  +(defun make-sudoku ()
  +  (make-array '(9 9) :initial-element 'x))
   
   (defun emptyp (slot)
     (or (null slot)
  
positive.code: 
  
  
  
  (dolist (sudoku '(
                    *20-minutes/1499/facile*
                    *20-minutes/1501/difficile*
                    *20-minutes/1502/expert*
                    *20-minutes/1505/moyen*
                    *20-minutes/1506/facile*
                    *metrofrance/694/moyen*
                    *metrofrance/696/facile*
                    *metrofrance/700/moyen*
                    *royco-minut-soup*
                    ))
    (multiple-value-bind (solutions tries) (sudoku-solver (symbol-value sudoku))
      (terpri) (print sudoku) (terpri)
      
      (sudoku-print (symbol-value sudoku))
      (format t "  ~A (with ~D empty slots)~%  has ~D solution~:*~P,~%  found in ~D tries.~2%"
              sudoku (sudoku-count-empty-slots (symbol-value sudoku))
              (length solutions) tries)
      (map nil 'sudoku-print solutions)))
  
  
  
  ;;;; THE END ;;;;
  
negative.code:                      (incf empty-count)))
      empty-count))
  
  
  ;;----------------------------------------------------------------------
  
  (defparameter *royco-minut-soup* #2A((x x x 8 x 4 2 x x)
  