Usage: % sudoku [options ...] -path <pathname for boards> -if <input file> -of <output file> -b <board root fname> OPITONS: -d : increase the debug level -r <n> : max recursion depth for brute-force guessing. 3 seems like a good number. -b <fnroot> : set root filename for boards (default is 'b1'). -p <path> : set path to boards directory (default is 'boards') -if <fn> : set input board filename explicitly (default is path/fnroot) -of <fn> : set output board filename explicitly (default is path/fnroot.out) EXAMPLE: ./sudoku -r 3 -b tough_one EXAMPLE: ./sudoku -if puzzle27.in -of xxx.out TODO: * add an ascii doc or other readme page. * fix the ridiculous Makefile * beef up the runall script * get it to solve evil2 * massive code cleanup * ruby version * golang version * add a UI * more flexible input format (e.g. '.' instead of '0' for starters) * better complexity measurements * ability to generate puzzles of a given complexity