Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Discrete Movements in Chess

Author: Bruce Moreland

Date: 12:59:36 12/16/99

Go up one level in this thread


On December 16, 1999 at 13:19:04, Albert Silver wrote:

>On December 16, 1999 at 00:47:53, Bruce Moreland wrote:
>
>>On December 15, 1999 at 19:12:19, Dan Ellwein wrote:
>>
>>>En-passant (if my understanding is correct) is a special case when a pawn
>>>reaches the 5th rank and the opposing adjacent pawn moves two squares on its
>>>first move.  The pawn on the 5th rank then has the option (only on its next
>>>move) to capture the opposing pawn as if it had moved only one square.  If this
>>>is the case, then en-passant would be considered as a normal capture covered
>>>under 'Magnitude 1 - Capture Only'.  In other words, the 'Movement' of the
>>>capture of a Pawn(P) done by en-passant is the same as the 'Movement' of the
>>>capture of a Pawn(P) done normally.
>>
>>I don't understand your categorizations then, or what you are trying to achieve.
>>
>>If you are making a list of cases you need to deal with when writing some sort
>>of move generation and/or execution software, en-passant is definitely weird
>>because you have to deal with a capture on a square that's not the destination
>>square.
>
>That's true but I would have imagined it would be relatively easy to program. As
>a player I basically treat it as two possibilities:
>- The pawn is forward two squares.
>- The pawn moved one square and I captured it.
>Is programming it any different?

None of it is hard to program, but it is an annoying special case that takes
time and space in a critical part of the code.

When you look at a move generator it is annoying how much is concerned with
moves that take place rarely.

bruce



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.