Evert wrote:I never understand why people seem to think it's some sort of popularity contest. There are two protocols that do more or less the same thing; you pick the one that suits you best, for whatever reason. I really don't get why (some) UCI fans feel the need to put down CECP or people who prefer that as a protocol.Steve Maughan wrote: I agree 100%. I'm actually surprised so many are voicing concerns about UCI in this thread. I know Bob and H.G. are not fans, but I thought the debate was basically over. I thought winboard, as a protocol, was dead. Are there any new engines implementing winboard?
As for new engines that support CECP, there's probably some. Variant engines certainly, but there's only a handful of those. Either way, the communication protocol is by far the least interesting aspect of a chess program.
I find this type of comment equally strange. The strength of a program does not depend on the communication protocol it uses.If you take a 35,000 ft perspective - all the top engines use UCI as their main (only?) protocol. So it can't be all that bad.
The most popular commercial chess GUIs use UCI as their native protocol, which by itself is sufficient reason for the top engines to implement UCI.
UCI and CECP are both perfectly serviceable and mostly interchangeable. UCI has some limitations that CECP doesn't have, if you find those important you can pick CECP. CECP has some peculiar quirks that UCI doesn't, if those irk you you pick UCI.
People say that there is a philosophical difference between the two: if you think the GUI is in control of everything and the chess engine is just a dumb piece of software that does what it's told, then go for UCI. If you think the chess program is in control and it's the GUI's job to communicate with the user on the program's behalf, then go for CECP. Perhaps there's something to that.
Hello Evert,
Please repeat that because I think that truth is being lost in the noise:
The strength of a program does not depend on the protocol it uses to communicate with the gui.
I find it fascinating that persons who pride themselves on devising and implementing logical programming, cannot help utilizing all sorts of illogical arguments for favouring one protocol over the other.
*All the top engines borrow from Stockfish, Fruit, Robbo, Ivanhoe, Rybka etc.*
So then....what exactly?
To say that UCI is not a perfect protocol is to voice a concern about it? CECP is not perfect either. H. G. is the first to say this. Repeatedly.
In fact, in using the engine, who really cares what protocol it uses? The gui should be able to use UCI and CECP engines simultaneously, if it is any good.
Oooops!
Do what you like I say...
*tongue in cheek*
Later.