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 _______________________________________________ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/