Chess::Plisco is a representation of a chess position in Perl. It also contains a UCI compatible chess engine. You can challenge the engine most of the time at https://lichess.org/@/plisco-bot.
It only works with Perl versions that are compiled with support for 64 bit integers!
Since it is reasonably fast and offers a lot of functionality needed for
chess engines, it can be used for rapid prototyping of a chess engine.
Writing a basic implementation of the AlphaBeta algorithm with Chess::Plisco
will not require more than 30 lines of code.
The library also has a very high test coverage so that you can probably use it as a reference implementation for your own experiments and tests.
Apart from Perl (which ships with your operating system unless you use MS-DOS aka MS Windows), the software has little dependencies:
Probably both dependencies are available for your system. Search your package manager for "PPI" and "libintl-perl".
Alternatively, install the command "cpanm" and do:
$ cpanm Chess::PliscoThis installs the last release of the software.
If you want to use the latest sources from git, build and install it with the usual sequence of commands:
$ perl Makefile.PL
$ make
$ make installSee the tutorial for a gentle introduction
to the library. When installed, you can also try the command
perldoc Chess::Plisco::Tutorial.
Reference documentation is available for:
- Chess::Plisco (
perldoc Chess::Plisco) - Chess::Pllisco::Macro (
perldoc Chess::Plisco::Macro). - Chess::Plisco::EPD (
perldoc Chess::Plisco::EPD) - Chess::Plisco::EPD::Record (
perldoc Chess::Plisco::EPD::Record) - Chess::Plisco::Tablebase::Syzygy (
perldoc Chess::Plisco::Tablebase::Syzygy).
The chess engine is started with the command "plisco". You can also run it from inside the repository like this:
$ perl -Ilib bin/pliscoThe engine needs some time to come up because it compiles a number of lookup tables. If you run it from a git checkout, it will also need time to parse its own source code and expand the macros contained.
Like almost all chess engines, plisco does not come with a graphical user interface. Try using one of these:
- Cute Chess (Linux, MacOS, and Windows)
- Banksia GUI (Linux, MacOS, and Windows)
- Arena (Linux, Windows)
Copyright (C) 2021-2025, Guido Flohr, [email protected], all rights reserved.