I think a viable solution for the practical problem
how to specify the communication of Go programs for
a tournament could be like this:
1. The GTP protocol is not affected in any way.
It remains exactly as is, without specifying
the transport mechanism.
2. The participants are asked to supply programs
which connect via TCP/IP, address xx.yy.zz.vv,
port ww, and speak GTP over this connection.
(It might be necessary to specify the physical
connection also, in case the computer on which
the participant's Go program is running is not
supplied by the organizer.)
3. We, the developers who want to further GTP, will
supply (at least) two packages, one for Windows
and one for Unix, containing reference implementations
of a referee (well, not really a referee, but merely
what we used to call a controller). I think that these
packages are not much more than one of the twogtp
programs, 'glue' for connecting them to TCP/IP, together
with instructions how to install and use them.
4. The organizer of a tournament then only has to supply
one computer per pair of Go players with one of the
packages installed on it. This computer must of course
be connected to a LAN.
Nick, would this solve or at least reduce the
problems you saw for organizing a computer Go
tournament?
If I have understood this right, I definitely like it. It sounds as if
it would remove all the problems that I have complained of. At least,
it would remove them from the tournament organiser. I can't judge how
hard it would be for entrants to supply programs as specified in (2).