I have a set of Common Lisp classes and functions for running engine vs engine matches, test suites and similar tasks with UCI engines (no XBoard support, it's simply far too messy for me) without a GUI. There is currently no support for tournaments, but it would be trivial to add.Zach Wegner wrote:Well, speaking of GUIs, I have been kicking around the idea of making a GUI, or rather a UI. I would like a simple but sophisticated user interface that supports UCI and Xboard (and could easily be modified to support another protocol if necessary) that is very portable (just some basic wrappers for IO, time, and threading). I think Xboard is a great tool, but it lacks features that I would like such as running tournaments, managing engines, not displaying a board, etc. Something like this, that is intended only for engine vs. engine use, would not need a GUI. It could use a little ASCII board though.
However, I will probablyl never get the time to write it. Maybe if others are interested we could make it a team effort...
Because the code was written over a period of more than ten years, and was never intended to be used or seen by others, it is packed with rough edges, idiosyncrasies and inconsistencies, but if there is any interest, I could perhaps clean it up and make it available to the public. Most of the code is portable ANSI Common Lisp, except for a few CCL-specific functions for managing sub-processes in the engine communication code.
Of course, requiring a complete Common Lisp implementation just to run engine vs engine matches from the command line is probably a too heavy-weight solution for most people. For me, it is perfect, because I always have a Lisp running, and the Lisp prompt essentially is my command line: I use it for most of the tasks ordinary Unix users would do from the Bash prompt.
Tord