> 
> From: Guido Flohr <[email protected]>
>> On 13 Nov 2023, at 21:22, Carsten Wenderdel <[email protected]> wrote:
>> 
>> In chess there is UCI, an interface understood by virtually all engines, 
>> bots and GUIs. Wouldn’t it be great if we had something similar for 
>> backgammon? Someone could write a new engine or GUI without worrying too 
>> much about the other. If someone wanted to create a JavaScript or Flutter 
>> GUI on top of GnuBG, it would be possible.
> 
> I have both implemented UCI and xboard and imho both ”protocols” are 
> terrible. We should learn from their mistakes.

What suggestions do you have? I don’t know much about UCI other than it is 
based on std input/output and text based.



> 
>> In chess UCI uses standard input and output. I believe a modern 
>> interpretation should be based on web technologies.
> 
> Absolutely.
> 
I personally like input/output because it is dead simple and elegantly 
addresses some issues with the probably most common scenario client and 
AI-server on the same computer (several instances, no need to 
communicate/negotiate ports) and avoids unnecessary complexity (if you have 
http you should do error handling for http).

Additionally I believe we need two mechanisms. One simple easy to implement 
one, mainly addressing play against the machine as described by Carsten and a 
fast one that might be needed for analysis, rollouts etc.
based on binary stuff, shared memory etc.  But it is sufficient to have the 
simply one first and have a place holder for the latter to be done if it is 
really needed.

ciao
Frank





Reply via email to