[computer-go] GTPv3
Don Dailey
drd at mit.edu
Wed Mar 7 17:05:28 PST 2007
On Wed, 2007-03-07 at 22:53 +0100, Gunnar Farneback wrote:
> * To abort the asynchronous genmove, the controller should send the
> (synchronous) command abort_async_genmove. If the engine has not
> returned the asynchronous genmove response before responding to the
> abort command, it is no longer allowed to return a move. I'm open
> for
> discussion on the exact name and whether it should return an error
> if
> the move had already been sent (I don't think it should).
But what about race conditions here? The engine may be responding to
the async_genmove command an instant before it realizes an abort
command
just arrived. In this case it would be violating your rule but it
wouldn't be anyone's fault.
I agree that this should not be considered an error. It should simply
be ignored by the controller.
I also agree that genmove should not expect the engine to make the move.
Even though it's not a a big deal I think the original GTP protocol
should also have specified it this way. A specific command should be
sent to actually apply the move to the game board. Of course this is
more important with the asynchronous version.
- Don
More information about the computer-go
mailing list