Skip to content
rpeszek edited this page Dec 11, 2017 · 58 revisions

Work in progress

This wiki contains markdown versions of literate Haskell notes from reading Bartosz Milewski's book Category Theory for Programmers.

This is my second reading of the book. To get more out of it, I decided to dedicate some time to finding (or coming up with) more code examples. For example, how to implement non-Hask categories, how to express product category, etc. This project makes these conceptual code examples public.
Category theory is a very abstract subject. I hope my notes and code will help others struggling with CT. Internalizing Milewski's book will make all of us better programmers.

Common conventions used in my notes

  • : is added to type level operators, for example :. is type level composition
  • code blocks without language annotations are used for proofs (like equational reasoning) or for code fragments used for documentation/reference only (like typeclass definitions imported from other packages).
  • I use the term 'dependently typed' loosely to mean DataKinds and friends.
  • I use literate Haskell Bird Style and all Haskell code is converted to code block with Haskell language annotation

TOC

Notes about Part 1 of the Book.

Mostly Ready for viewing (with some TODOs):

Work-in-progress (reader stay away):

Notes about Part 2.

Mostly Ready for viewing (with some TODOs):

Work-in-progress (reader stay away):

Notes about Part 3.

Mostly Ready for viewing (with some TODOs): (soon)

Work-in-progress (reader stay away):