On Tuesday, December 4, 2012 11:34:32 PM UTC-8, Jason Benjamin wrote:
I am not an experienced user of newsgroups and I know virtually nothing of
how to create chess programs. I have come upon a wiki at the http site
chessprogramming.wikispaces.com and find it as a vague but varied reference
on the subject. However, I have downloaded the sources of some chess
programs (Tom Kerrigan's Simple Chess Program I like the most) and cannot
read the source. It would be nice if I could find some books or websites
with some detailed information or I way to understand the underlying details
and methods of Tom's source without having to bother him with an email
discourse. I am having a lot of difficulty in finding pointers to textbook
material or tutorials (that is, anything other than reference) on the theory
and process behind writing a chess program. I don't like that the only
sources I can find are all written in near obfuscated code either and
frankly I would probably need code written as though for a child before I
could come close to understanding how such a program actually works.
I would appreciate any help or directions in understanding how to write such
an engine. If I am just coming up with blocks and there are indeed
resources I have skipped over please let me know.
I don't know of any book dedicated to the topic of writing a chess program. Tom's Simple Chess Program (aka TSCP) is one of the most basic chess engines for which the source code is available. If you cannot understand it, then I might agree with your concern that you need something even simpler, although I'm not sure it exists either.
Just about the only other thing I would suggest is going to this site:
It is intended to be a step-by-step guide to writing a chess engine, although I don't think the author is finished with his "99 steps" and the author does expect the reader to have some basic knowledge of programming techniques, and also the concept and usage of bitboards (which are a set of 64-bit integers used to define the distribution of chess pieces on a board).
If the above website doesn't give you some enlightenment, then I'm not sure what else I can suggest.