From Chessprogramming wiki
Jump to: navigation, search

Home * Engines * Cassandre

Cassandra [1]

an Chess Engine Communication Protocol and UCI compliant open source chess engine under the terms of the GNU General Public License (GPL) by Raphael Grundrich, Thomas Adolph and Jean-Francois Romang, written in C++ and first released in March 2003. Cassandre started as a student project at Louis Pasteur University, Strasbourg [2].


Cassandre is a bitboard engine using rotated bitboards with 256 occupancy states to determine sliding piece attacks, bitscan aka first- and last one by conditional 16-bit lookups, and population count by eight byte lookups credited to Dann Corbit [3]. Cassandre greatly lacks any move ordering except generating captures before quiet moves. The structure of the move generation serialization loops is an instructive counterexample of how one shouldn't write a bitboard engine.

See also

External Links

Chess Engine



  1. Evelyn De Morgan - Cassandra (1898, London). Cassandra in front of the burning city of Troy at the peak of her insanity, Wikimedia Commons
  2. Cassandre - Chess Engine
  3. Cassandre - Chess Engine - About, cassandre-0.24\src\BitboardToolkit.cpp - contage de bits par table lookup (D. Corbit)

Up one level