Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Extensible Chess Interface (XCI) : updated draft

Author: Dann Corbit

Date: 09:23:40 03/16/05

Go up one level in this thread


On March 16, 2005 at 05:37:40, Tim Foden wrote:

>On March 15, 2005 at 17:58:41, Dann Corbit wrote:
>
>>On March 15, 2005 at 17:02:52, F. Huber wrote:
>>
>>>On March 15, 2005 at 16:34:50, Dann Corbit wrote:
>>>
>>>>On March 15, 2005 at 15:57:51, F. Huber wrote:
>>>>
>>>>>On March 15, 2005 at 15:43:27, Dann Corbit wrote:
>>>>>
>>>>>>On March 15, 2005 at 15:40:33, F. Huber wrote:
>>>>>>
>>>>>>>On March 15, 2005 at 13:54:46, Dann Corbit wrote:
>>>>>>>
>>>>>>>>The UCI protocol is flawed because it does not store the engine setup
>>>>>>>>information.  You have to communicate this stuff every time.  Still, this part
>>>>>>>>of the UCI protocol is clearly better than Winboard, because it at least is
>>>>>>>>uniform.
>>>>>>>
>>>>>>>Hi Dann,
>>>>>>>
>>>>>>>there´s absolutely nothing flawed in the UCI protocol, at least not in your
>>>>>>>mentioned problem of storing the engine setup!
>>>>>>>
>>>>>>>The reason why this ´setup storing´ can´t be found anywhere in the UCI protocol,
>>>>>>>is simply that this is either the task of the GUI _or_ the engine itself -
>>>>>>>whoever wants to implement this!
>>>>>>>
>>>>>>>Do you need examples?
>>>>>>
>>>>>>Yes, by all means.
>>>>>>
>>>>>>>Well, e.g. Arena actually stores _every_ engine option in the registry!
>>>>>>
>>>>>>And it should be in a database.
>>>>>
>>>>>Is the registry no database?
>>>>
>>>>Not really.  And it does not exist for UNIX and the MAC (or any other platform).
>>>>
>>>>>>>And e.g. ChestUCI has its own INI-file, where it also stores all of its
>>>>>>>settings (moreover you can even specify the ´behaviour´ of this INI-file
>>>>>>>in 3 different ways with a special commandline parameter for ChestUCI)!
>>>>>>
>>>>>>And what a horrible place to do it.
>>>>>
>>>>>Again, is a INI-file no database?
>>>>>(BTW, the user has absolutely nothing to do with ChestUCI´s INI-file!)
>>>>>
>>>>>This time you´re really speaking _nonsense_! :-(
>>>>
>>>>An ini file is not a database.
>>>>It is the wrong place to store these parameters.
>>>>Let me repeat, I have literally hundreds of chess engines.
>>>>Will I want to edit an ini file for each and every revision of each and every
>>>>engine?
>>>>
>>>>Storing things in ini files (where each ini file is different) is bad, bad, bad.
>>>>
>>>>And did I mention bad?
>>>>
>>>>It is annoying, unhelpful, harmful, irritating, and awful.
>>>>
>>>>It belongs in a consistent database.  Anything else is just plain wrong.
>>>
>>>Well I see: either you _don´t_ get the point, or you don´t _want_ to get it!
>>>
>>>Did I say anywhere, that the _user_ should _edit_ these INI files at all? NO!
>>>
>>>Of course the user simply changes all engine settings in a configuration window
>>>within the chess GUI!
>>>But if these settings are stored by the GUI or the engine - or -
>>>if these settings are stored in a INI-file, the registry, a ´database´ (whatever
>>>_you_ would call so) or in anything else, is completely indifferent for the
>>>user!
>>>
>>>Got it now? ;-)
>>
>>Chess GUI one (e.g. Arena) has to do this.
>>Chess GUI two (e.g. Jose) has to do this.
>>Chess GUI three (e.g. Knights) has to do this.
>>Chess GUI four (e.g. ChessBase) has to do this.
>>Chess GUI five (e.g. ChessAssistant) has to do this.
>>Chess GUI six (e.g. Winboard) has to do this.
>>
>>It it clear that it is lunacy to have to reprogram this every time?
>>
>>It it clear that it is too much work to get every parameter for every program
>>correctly performed in this way?
>>
>>To use something besides a database is the wrong way to do it.
>>
>>It a database, we have consistency.  An ini file will not ensure consistency.
>>In a database, we have rules and contraints and triggers.  An ini file cannot
>>perform rules, contstraints or triggers.
>>In a database, we have indexes.  An ini file will do a sequential scan.
>>
>>In a database, we can create a uniform, simple interface.
>>
>>There is a billion dollars worth of effort to write a good database.
>>Your ini files will never duplicate it.
>
>I'm a little confused as to the purpose of your database idea.  Maybe the
>following 2 questions would help to clafify it?
>
>Is it true that you are proposing this for the GUI to store it's info about the
>engines?

Yes.

>This would seem like an OK idea.

It's a really good idea.  But I can't communicate how valuable it is in such a
way that other people understand it.  If they did, everyone would instantly jump
on the bandwagon.

>Initially in the discussion it seemed like you were proposing this as a way for
>the engines to communicate with the GUI.  Is this true?

Some sorts of communications information could be stored (language translation
tables, maybe even grammar).   But I am not proposing a database as a
replacement for TCP/IP or pipes.

>This would seem like a bad idea.  (AFAIK :)
>
>Cheers, Tim.



This page took 0.01 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.