Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: sliding attacks in three #define

Author: Christophe Theron

Date: 12:26:34 04/09/04

Go up one level in this thread


On April 09, 2004 at 14:27:48, Sune Fischer wrote:

>
>>Clearly, nothing beats the ugliness of bitboards.
>
>This may not be the best example to judge by.
>
>-S.
>>    Christophe



In the contrary, I think it's fairly typical of bitboard code.

Elegance is supposed to be the strong point of bitboards.

The only thing I find elegant is the pseudo-great starting idea "64 squares <->
64 bits".

Passed this point everything becomes unreadable and ugly.

I also see it often used to pre-compute attack tables and such, which is in my
opinion contrary to one of the most important things I have learned in computer
chess: do not compute anything in advance if you are not certain that you will
use it. This is not an intrinsic problem of bitboards, it's just that use of
bitboards often go along with this misuse of computing resources, is it just by
chance?

Bitboards are a great tool allowing you to compute very complex things in a
blink. The problem is that in a chess program you rarely need to do these
complex computations if you know what you are doing, and so you end up with ugly
and unreadable code and waste of resources (in particular of L1 and L2 caches).

That being said, I do not want to be too harsh: it is probably possible to write
a top-level chess program using bitboards, a program that would be not very far
behind the programs using more portable approaches like 0x88 and derivatives.

Somebody will write one some day.



    Christophe (setting up a shield for the upcoming flame)



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