Chess4p

A library for chess related functionality.

The work is inspired by the Python module python-chess,
although the main emphasis for Chess4p is thought to be on
features needed by chess database applications, and not so much features needed by
chess engines.


Features include

* Legal moves
* Board state handling, FEN input/output
* Perft testing
* UCI move input/output
* SAN move input/output
* PGN file reader

Planned enhancements

* Move and position binary encoding/decoding
* Support for Fischer Random chess
* EPD


Only 64-bit systems are supported, due to heavy use of the 'bitboard' data type.


INSTALLATION

The module can be fetched from CPAN.

To instead install it from this source, run the following commands:

	perl Makefile.PL
	make
	make test
	make install

SUPPORT AND DOCUMENTATION

After installing, you can find documentation for this module with the
perldoc command.

    perldoc Chess4p

You can also look for information at:

    RT, CPAN's request tracker (report bugs here)
        https://rt.cpan.org/NoAuth/Bugs.html?Dist=Chess4p

    CPAN Ratings
        https://cpanratings.perl.org/d/Chess4p

    Search CPAN
        https://metacpan.org/release/Chess4p

    Codeberg:
        https://codeberg.org/ejner/chess4p


LICENSE AND COPYRIGHT

This software is Copyright (c) 2026 by Ejner Borgbjerg.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)

