The Detailed Record
The Six Pieces of Eschess
An interactive engineering blog of how Eschess is built, one chapter per piece. It moves from the foundational building blocks up to the high-level orchestration, with live widgets embedded between the paragraphs.
- Board — The Arena Prologue Why build Eschess from scratch? The core drive to bridge raw numerical search, memory-safe systems programming, and neural networks into one unified architecture.
- 1. Pawn — The Foundation From naive square arrays to 64-bit bitboards, and the search that sits on top: Minimax, alpha-beta, iterative deepening, and transposition tables.
- 2. Knight — The Leap The same engine logic written three times in Python, C++, and Rust, kept byte-for-byte equivalent and bound together with zero-cost FFI: prototype in Python, run on native nodes-per-second.
- 3. Rook — The Castle An engine is only as good as its tests: the UCI protocol, an automated match harness, Elo with real confidence intervals, and Average Centipawn Loss measured against Stockfish.
- 4. Bishop — The Long Diagonal From handcrafted piece-square tables to a deep network: an AlphaZero-style pipeline where a policy net proposes moves, a value net judges positions, and MCTS ties them together inside a self-play loop.
- 5. Queen — The Spectacle The visual layer: a pygame sandbox and an Astro/Svelte showcase that render the same engine telemetry as search arrows, ranked candidate moves, effort clouds, and an eval bar.
- 6. King — The Mastermind Draft The hybrid orchestrator that hot-swaps opening books, middle-game engines, and endgame tablebases — plus the LLM middleware that turns raw evaluations into plain-English coaching.