Hi,
I'm proud to announce that the first playable version
of Schess is available in the "demos" directory of the
repository of SLAYER:
Schess is a framework for describing chess-like games
in the most intuitive imaginable way, i.e. by simply
showing which moves are available.
(The more distant goal is to make it a literate-programming
implementation of chess game, but there's a tiny mess
in the source code now)
The (yet incomplete) ruleset for the game of Chess
can be viewed here:
(there are some comments written in Polish language,
but I believe that the main content should be comprehensible
to anyone)
The demos/schess.scm is the file to actually run the
Chess demo. It provides a drag&drop interface to the chess
board, and highlights the available moves for a selected
figure. Some features (namely: castling and en-passent)
aren't yet available.
The full implementation consists of ~700 lines of code (excluding
the SLAYER itself and my library that contains some convinient
linguistic extensions to Guile Scheme). It's a two-player game
only -- there's no computer AI (I'm planning to implement it
during the "General Game Playing" course that just started on
Coursera), but perhaps someone will find the code entertaining.
Best regards,
Panicz