CustomChessKell explored how a chess engine can become configurable without hardcoding every piece. The project used Haskell to parse YAML-defined movement rules into an interpretable structure, validate board states, simulate legal moves immutably, and support custom pieces while preserving king-safety and game-ending logic.
Functional Programming / 2025
CustomChessKell
Built a configurable chess engine in Haskell that interprets custom chess piece movement rules from YAML files, using parser design, immutable board simulation, validation logic, and functional patterns to support unusual piece behavior.