Hi all!
I recently released Freecell Solver 2.11.10:
http://freshmeat.net/projects/freecellsolver/?branch_id=13943&release_id=288718
This release fixes the RPM-building again, although I'm still not happy with
the shared library (.so generation) which just gives "libfreecell-solver.so"
without any versions.
The highlight of this release however is the fact that I converted the command
line argument processing from a if (!strcmp(...)) chain to a radix-tree. You
can read more about radix trees here:
http://en.wikipedia.org/wiki/Radix_tree
The radix tree is hard-coded into the C code using switch and if's. This code
is in turn generated by the following Perl script:
http://svn.berlios.de/viewcvs/fc-solve/trunk/fc-solve/source/gen-cmd-line-radix-tree.pl?view=log
Getting the radix tree to be built properly, and then to compile it to C code
proved to be relatively tricky. I discovered a bug in 2.11.10 that caused
the "-opt" argument to not be detected (and as a result broke compatibility
with PySolFC). This is fixed in the trunk.
I'd like to note that I did most of this work after I woke up one night after
two hours of sleep, and spent the entire night coding.
Regards,
Shlomi Fish
-----------------------------------------------------------------
Shlomi Fish
http://www.shlomifish.org/
Why I Love Perl -
http://xrl.us/bjn88
Shlomi, so what are you working on? Working on a new wiki about unit testing
fortunes in freecell? -- Ran Eilam
Received on Sat Nov 22 2008 - 05:37:05 IST