# Category Theory

* Category theory
  * [Category theory](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/category-theory)
  * [Category](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/category)
  * [Category object](https://github.com/mandober/debrief.math/tree/1303f9c4d1763e93618e71cea4b00554bb65a514/450-category-theory/terms/category-object.md)
  * [Arrow](https://github.com/mandober/debrief.math/tree/1303f9c4d1763e93618e71cea4b00554bb65a514/450-category-theory/terms/arrow.md)
  * [Ordered category](https://github.com/mandober/debrief.math/tree/1303f9c4d1763e93618e71cea4b00554bb65a514/450-category-theory/terms/ordered-category.md)
  * [Concrete category](https://github.com/mandober/debrief.math/tree/1303f9c4d1763e93618e71cea4b00554bb65a514/450-category-theory/terms/concrete-category.md)
  * [Initial Object](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/initial-object)
  * [Terminal Object](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/terminal-object)
  * [Duals](https://mandober.gitbook.io/math-debrief/450-category-theory/broken-reference)
  * [Product](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/product)
  * [Coproduct](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/coproduct)
  * [Universal construction](https://mandober.gitbook.io/math-debrief/450-category-theory/07-constructions/universal-construction)
  * [Kleisi category](https://mandober.gitbook.io/math-debrief/450-category-theory/10-categories/kleisi-category)
  * [Functor](https://github.com/mandober/debrief.math/tree/1303f9c4d1763e93618e71cea4b00554bb65a514/450-category-theory/terms/functor.md)
  * [Natural transformation](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/natural-transformation)
  * [Monad](https://mandober.gitbook.io/math-debrief/450-category-theory/broken-reference)

## Category Theory by Bartosz Milewski

<https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/>

Part One

* [Category](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/category): The Essence of Composition
* Types and Functions
* Categories Great and Small
  * [Category](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/category)
  * [Arrow](https://github.com/mandober/debrief.math/tree/1303f9c4d1763e93618e71cea4b00554bb65a514/450-category-theory/terms/arrow.md)
  * [Ordered category](https://github.com/mandober/debrief.math/tree/1303f9c4d1763e93618e71cea4b00554bb65a514/450-category-theory/terms/ordered-category.md)
* [Kleisli Categories](https://mandober.gitbook.io/math-debrief/450-category-theory/10-categories/kleisi-category)
* [Products](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/product)
* [Coproducts](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/coproduct)
* [Algebraic Data Types](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/algebraic-data-types)
* [Functors](https://github.com/mandober/debrief.math/tree/1303f9c4d1763e93618e71cea4b00554bb65a514/450-category-theory/terms/functor.md)
* [Functoriality](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/functoriality)
  * Bifunctors
  * Profunctors
  * Contravariant
* [Function Types](https://mandober.gitbook.io/math-debrief/450-category-theory/terms/function-type)
  * Universal Construction
  * Exponentials
  * Cartesian Closed Categories
  * Exponentials and Algebraic Data Types
  * Curry-Howard Isomorphism
* Natural Transformations

Part Two

* Declarative Programming
* Limits and Colimits
* Free Monoids
* Representable Functors
* The Yoneda Lemma
* Yoneda Embedding

Part Three

* It's All About Morphisms
* Adjunctions
* Free/Forgetful Adjunctions
* Monads: Programmer's Definition
* Monads and Effects
* Monads Categorically
* Comonads
* F-Algebras
* Algebras for Monads
* Ends and Coends
* Kan Extensions
* Enriched Categories
* Topoi
* Lawvere Theories
* Monads, Monoids, and Categories

Part One

* [Category: The Essence of Composition](https://bartoszmilewski.com/2014/11/04/category-the-essence-of-composition/)
* [Types and Functions](https://bartoszmilewski.com/2014/11/24/types-and-functions/)
* [Categories Great and Small](https://bartoszmilewski.com/2014/12/05/categories-great-and-small/)
* [Kleisli Categories](https://bartoszmilewski.com/2014/12/23/kleisli-categories/)
* [Products and Coproducts](https://bartoszmilewski.com/2015/01/07/products-and-coproducts/)
* [Simple Algebraic Data Types](https://bartoszmilewski.com/2015/01/13/simple-algebraic-data-types/)
* [Functors](https://bartoszmilewski.com/2015/01/20/functors/)
* [Functoriality](https://bartoszmilewski.com/2015/02/03/functoriality/)
* [Function Types](https://bartoszmilewski.com/2015/03/13/function-types/)
* [Natural Transformations](https://bartoszmilewski.com/2015/04/07/natural-transformations/)

Part Two

* [Declarative Programming](https://bartoszmilewski.com/2015/04/15/category-theory-and-declarative-programming/)
* [Limits and Colimits](https://bartoszmilewski.com/2015/04/15/limits-and-colimits/)
* [Free Monoids](https://bartoszmilewski.com/2015/07/21/free-monoids/)
* [Representable Functors](https://bartoszmilewski.com/2015/07/29/representable-functors/)
* [The Yoneda Lemma](https://bartoszmilewski.com/2015/09/01/the-yoneda-lemma/)
* [Yoneda Embedding](https://bartoszmilewski.com/2015/10/28/yoneda-embedding/)

Part Three

* [It's All About Morphisms](https://bartoszmilewski.com/2015/11/17/its-all-about-morphisms/)
* [Adjunctions](https://bartoszmilewski.com/2016/04/18/adjunctions/)
* [Free/Forgetful Adjunctions](https://bartoszmilewski.com/2016/06/15/freeforgetful-adjunctions/)
* [Monads: Programmer's Definition](https://bartoszmilewski.com/2016/11/21/monads-programmers-definition/)
* [Monads and Effects](https://bartoszmilewski.com/2016/11/30/monads-and-effects/)
* [Monads Categorically](https://bartoszmilewski.com/2016/12/27/monads-categorically/)
* [Comonads](https://bartoszmilewski.com/2017/01/02/comonads/)
* [F-Algebras](https://bartoszmilewski.com/2017/02/28/f-algebras/)
* [Algebras for Monads](https://bartoszmilewski.com/2017/03/14/algebras-for-monads/)
* [Ends and Coends](https://bartoszmilewski.com/2017/03/29/ends-and-coends/)
* [Kan Extensions](https://bartoszmilewski.com/2017/04/17/kan-extensions/)
* [Enriched Categories](https://bartoszmilewski.com/2017/05/13/enriched-categories/)
* [Topoi](https://bartoszmilewski.com/2017/07/22/topoi/)
* [Lawvere Theories](https://bartoszmilewski.com/2017/08/26/lawvere-theories/)
* [Monads, Monoids, and Categories](https://bartoszmilewski.com/2017/09/06/monads-monoids-and-categories/)

PDF version

* [pdf version](https://github.com/hmemcpy/milewski-ctfp-pdf/)
