Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: eval() in or out of board structure?

Author: Anthony Cozzie

Date: 12:04:31 02/13/04

Go up one level in this thread


On February 13, 2004 at 13:50:32, Andrew Wagner wrote:

>In general, would you guys recommend having functions like eval(), search(),
>gen_moves(), etc. as members of the board structure, or is it better to pass the
>board structure to those functions?

OOP is a way to reduce development time by abstracting away as much as
information as possible into classes.  This means that changes are relatively
easier as various pieces of the program are not as tightly interwoven.

However, your board structure is at the heart of everything you do -
make/unmake, eval, movegen, search, everything.  You are simply not going to be
able to abstract this away without a _large_ performance hit.  Plus, a chess
program is small enough (10K lines will give you a strong amateur program) and
usually has only one developer, so applying a lot of software engineering ideas
isn't really necessary.

anthony

P.S. Zappa is in pure C, so I might be biased.



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