Author: Miguel A. Ballicora
Date: 10:56:59 08/22/02
Go up one level in this thread
On August 21, 2002 at 18:47:40, Dieter Buerssner wrote: >On August 21, 2002 at 16:34:14, Miguel A. Ballicora wrote: > >>Why moves on analyze mode or many possible commands in WB is a problem? > >For the analyze: Because you have to delay commands back to some outer control >loop from deep search. Sure, it can be done - but it makes things more >complicated at a point where it is not needed. If only exit and "." were allowed >in analyse, no additional "outer loop logic" would be needed at all. > >analyse\nexit\n\force\ne2e4\nanalyze\n > >I would bet, that at least some WB engines would have a bug, when they receive >setboard during analyze (WB does not send this at the moment, but it is clearly >allowed in the protocol). Ok, I never experienced serious problems. I guess that doing it with two threads must have simplified things. It was mentioned in this thread. Since I have not done it in a different way I cannot comment. >For "many possible commands": Just because it is not allways obvious what to do. >Some cases that I have seen (not only from WB, but also from other WB >interfaces): result during ponder and during search. Why not send "?" "force", >have the engine in a known state, and then send result. Why would I need to >think about all the cases, where result can be received. Depending on the mode, >I would need to do something different. And, in xboard (at least when connected >to ICS), it was slightly different than in WB. Sometimes Linux Yace "hang" (WB >did not recognize, that it is ready for the next game, or something similar) >when result was received. It never happened under WB. It took me a long time, to >figure out, what was happening, and I fixed it. But, it was not obvious at all - >at least to me. > >Other commands, that can be received in various search modes: force, easy, new >(under some CA version also while pondering), and probably many more. > >I asked Tim, which commands are allowed in which modes. Well - I should be >prepared for any command. Under UCI, I know, for which commands, I need to >prepared, and the action is very well defined. Yes, is everything in the details. I believe that the design of WB is good and flexible, maybe a tiny bit too flexible. It could be fixed without much effort IMHO. At least things should be spelled out a bit better in the protocol. I agree with that. After all, the protocol is flexible for many possible behaviors of the GUI, but we know exactly what WB does. So, there is two protocols, a "theoretical one" and the one that the WB-GUI uses, which is more restricted. Maybe we should "document" the latter. AFAIK, that has not been done. Regards, Miguel >My main "outer playing loop" for Winboard is 350 lines long, the same for UCI is >60 lines long (including over 10 lines inside #if DEBUG_UCI #endif), and some >complication of code because of learning, which is not so easy under UCI. > >Of course, the WB code suffers also from this (because it is also prepared for >the CB WB-adapter). But the UCI code is just much easier (for example no need >for any logic, to know, if I should start to search/analyze or ponder >automatically). > >Regards, >Dieter
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.