> No apology necessary... how many projects out there have major > version numbers less than 1? :) Thanks, Hal! I appreciate it. > When you say it crashes, do you mean that literally? Or what? No, sorry. It exits with an error message, like this, for example: kingix is NIL!!! color=-1... about to crash ./nchess6.rb:1924:in `[]': no implicit conversion from nil to integer (TypeError) from ./nchess6.rb:1924:in `Eval' from ./nchess6.rb:1918:in `each' from ./nchess6.rb:1918:in `Eval' from ./nchess6.rb:1781:in `Eval' from ./nchess6.rb:2407:in `ABnegaSearchZWTail' from ./nchess6.rb:2383:in `times' from ./nchess6.rb:2383:in `ABnegaSearchZWTail' from ./nchess6.rb:2457:in `ABnegaSearchZWTail' ... 11 levels... from board.rb:1028:in `PrepareForNextMoveWhenOpponentThinks' from board.rb:812:in `replaystart' from board.rb:230:in `build' from board.rb:1079 While I could easily prevent that particular ÁÄrashfrom happening, it is indicative of an error somewhere in the engine that needs to be fixed, so IÃÎ not just plugging the hole, if that makes any sense. > Is part of this in C? No, it is 100% pure Ruby. It is a line-by-line port of the Pythonchess-0.6, with only one tiny tweak I made myself because I had always wanted the python version to draw a red box around where it last moved from to where it last moved to, in case I was looking away when it moved. :-) > Is Ruby's performance acceptable (up till the time it dies)? Well, that is an excellent question. At work, IÃ×e got a brand new screaming Core Duo machine, and the performance is great. But if you run the python version side-by-side with the Ruby version, the python version is easily 10x faster, and sometimes 100x faster based purely on the ÅÏumber of nodesit processes during the game, which it reports in the GUI. So most of the time Ruby will process ~200 nodes/second while python would be processing ~4000 nodes/second. Sad, but true. I wish someone would just step in and make an Oflag for ruby that either byte-compiled the script or native-compiled it and then ran it. :-) -- Glenn > Hal