Hmm... I would think that I would want to skip the white Bishop eval code if there were no white Bishops, and the black Bishop eval code if there were no black Bishops.Evert wrote:I can. For instance: I skip bishop (rook, knight) evaluation if there are no bishops (rooks, knights) remaining, which is a simple test.
I classify endings from the material index. That way it can be done without any explicit tests.If I want to classify an ending it's convenient to test for the presence of queens (say) using "if (board[QUEEN] != 0)". I'm sure there are other examples.
True. But perhaps update-restore would be faster than copy-make, when you account all the cost hidden in calculating stuff 'on the fly' from the less elaborate data set.The reason I use 6 piece types + 2 colours in Jazz is that I use copy-make and copying less stuff means it's faster.
