This is an unofficial PDF and LaTeX source version of Bartosz Milewski's "Category Theory for Programmers," converted from his original blog post series with permission.
The project addresses the need for a polished, printable version of category theory content written specifically for programmers. It takes Milewski's blog posts and converts them into a professionally formatted LaTeX document that can be built into PDF. The approach maintains fidelity to the original material while adding structure and visual presentation suitable for both screen reading and print publication.
Developers learning category theory through a programming lens should choose this over the original blog posts if they prefer a consolidated, formatted document. The project offers multiple editions tailored to different programming languages: Haskell (the original version), Scala, OCaml, and Reason. Printed hardcover and paperback editions are available for purchase. Building the PDF requires Nix with flakes enabled, and the project provides a Makefile for manual compilation once dependencies are installed. The tool suits anyone wanting to study category theory with practical programming examples rather than pure mathematics.
The project maintains multiple language-specific editions alongside the original, indicating sustained effort to keep content relevant across different programming communities. Pull requests are actively reviewed and merged into the main branch for incorporation in subsequent releases. Errata documents are maintained for printed editions, showing attention to accuracy and correction of issues discovered after publication.