bob wrote:First, I thought the same. And I lost a game when ChessGUI said "this claim is invalid, you lose."
Yes, ChessGUI is one of the few that verifies claims. But it solves the race condition by adjudicting all claimable draws, so no problem there. Just don't do any advance claiming.
Supposedly Arena is doing the same thing according to (I believe) Graham who said the same problem occurred there.
Well, I missed that, but I will investigate it by contacting Graham.
I've been using winboard/xboard since long before you could even spell it. I've always been perfectly happy with it. And some of the features you have added have been quite useful and well-done. But there is an ambiguity in the protocol that requires a god-awful kludge from the programmer to make it work correctly.
Well, the protocol is something different tha the GUI, and not a distinctive feature amongst GUIs, as they all have to follow the same protocol. It is also not how I would have designed a protocol.
So much of a kludge that most authors are unaware of the problem, much less the solution.
Well, engine authors should not be bothered with solving GUI problems. It should be eough for them to follow the protocol. If you mean GUI programmers here, that is a different matter. But GUIs are typically used very heavily, and if the make wrong calls, they would be very quickly found out. And then the GUI programmer will get a hands-on learning experience if he has to debug it.
I've made the necessary change to how crafty "claims" a draw, in version 23.1. I'll just "wait and see" to determine how well it works in the general case.
I am curious. But if there are problems with the new claim sequence, we should change the GUIs, not Crafty!
Anytime I lose a game that is should be drawn, it is definitely "my problem". I'm the one losing 1/2 point. Whether it is in an important event or not doesn't matter that much.
This is a completely wrong attitude. It is trivial for me to write a GUI that would forfeit Crafty for playing e2-e4 or d2-d4, with the message "illegal move by Crafty". Would you then delete these openings from Crafty's book, just to score better on that GUI? It seems wiser to simply say: "this GUI is obviously no good". By adapting to garbage GUIs, you will slowly but surely reduce your engine to garbage as well, which will then promote the origin of more garbage GUIs that will again adapt their command handling to garbage engines, etc.
Not quite true. When I write down the move and call the arbiter over, I now am _forced_ to play that move, unless it is illegal. The arbiter should come over to verify the claim, and when he examines the position after the move I write down, looking for a 3-fold rep, he should notice that that move checkmated my opponent and ended the game.
This cannot really happen on a 3-fold rep, or you would have been checkmated 2 times before! It can only happen on a 50-move claim. And then there s no need for the referee to play the move; on the contrry, he should go backwards in the game, to count reversible moves, and if there are 99, and your move was not a Pawn's or capture, he would in theory never have to perform it to judge if it was draw...