
The rivalry behind the world’s smallest chess program - rottyguy
http://kernelmag.dailydot.com/issue-sections/headline-story/14353/small-chess-program-bootchess-nanochess/
======
billforsternz
You can't really talk about 492 bytes versus 472 bytes or whatever unless you
precisely define the platform the code runs on, and the features required. To
my mind castling and enpassant should be required, they are a fundamental part
of the game. Also underpromotion and stalemate (if they don't implement
castling, I'm guessing they take some other shortcuts). On the other hand,
alphanumeric labels for ranks and files just mess up the rudimentary text
console display and should be omitted. I would require rejection of all
illegal move attempts by the human opponent. But I wouldn't require
implementing 3 fold repetition, insufficient material or 50 move draws.

------
z0r
Poudade wrote the 256 byte intro megapole which recently featured at Assembly
2015
([https://www.youtube.com/watch?v=Z8Av7Sc7yGY](https://www.youtube.com/watch?v=Z8Av7Sc7yGY)).
Lot of drama for his online personas beyond this chess competition (which I've
just wasted an hour reading about) but unquestionably an excellent size coder

------
sireat
There was a long discussion on the validity of this (here on YC and on reddit)
achievement when Poudade's program was first released.

I still do not consider it a proper chess program as castling and en passant
have been an integral part of chess rules for centuries.

So these programs are nice but they are not chess.

For this contest to have a relevance, make it simple: program must abide by
the chess rules (per say FIDE or USCF) and also support UCI to avoid worrying
about interfaces:
[https://en.wikipedia.org/wiki/Universal_Chess_Interface](https://en.wikipedia.org/wiki/Universal_Chess_Interface)

That would make it a nice level playing field.

PS. Of course then some smartass would write:

import Crafty

import UCI

Crafty.Play(UCI.Handle)

------
shard
This brings up the question of how chess engine size is related to playing
ability. I couldn't find an online comparison, does one exist?

As a corollary, does anything similar exist for go? People trying to write the
smallest go engine?

------
pavel_lishin
I wonder how many bytes would be required to add castling and en passant.

