Bartosz Milewski's Programming Cafe

## Table of Contents

### Part One

- Category: The Essence of Composition
- Types and Functions
- Categories Great and Small
- Kleisli Categories
- Products and Coproducts
- Simple Algebraic Data Types
- Functors
- Functoriality
- Function Types
- Natural Transformations

### Part Two

- Declarative Programming
- Limits and Colimits
- Free Monoids
- The Yoneda Lemma
- Adjunctions
- Monads
- Comonads
- F-Algebras
- Algebras for Monads
- …

# Preface

For some time now I’ve been floating the idea of writing a book about category theory that would be targeted at programmers. Mind you, not computer scientists but programmers — engineers rather than scientists. I know this sounds crazy and I am properly scared. I can’t deny that there is a huge gap between science and engineering because I have worked on both sides of the divide. But I’ve always felt a very strong compulsion to explain things. I have tremendous admiration for Richard Feynman who was the master of simple explanations. I know I’m no Feynman…

View original post 1,284 more words