... are part of the state. Apparently, the current player is not (I think it should be, which would simplify many commands, but that's a different matter). ...
Agreed, except the comment about current player. Not to include a current player is very intentional to avoid unnecessary limitations on the protocol.
/Gunnar
How would this limit the protocol? In my mind, if there was a 'genmove' and a 'move' command, the color would be an optional parameter (same with 'is_legal'). In most cases, you want to know the best move for the current player, but you always have the option to specify the player to move.
I'd even argue that it may be a greater burden to require programs to support consecutive moves of the same color, while every program must be able to handle alternating moves and keep track of whose turn it is to play. So assuming there's a 'setup' command, the core standard might not even require handling the optional color parameter.
Anders Kierulf www.smartgo.com