Category theory

Does anybody have any starting-out references for Category Theory in computer science?

I did a maths degree, and while I came across the odd bit of category theory nobody in the maths faculty taught a course on it. I got the impression it was seen by many as a needlessly abstract way of rephrasing existing algebraic results, which didn't bring many new mathematical insights.

But, since then I see references to it everywhere in connection with logic and theoretical computer science - trying to understand things like monads, domains, denotational semantics, type theory and so forth. The mathematical treatments I've seen have been horribly abstract and lacking in intuition so I thought I'd ask you guys if you know of any references from a slightly different perspective.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Pierce Learning Lounge

Gunter's book

I recommend Semantics of Programming Languages. This book is a graduate level introduction to domain theoretic techniques for modeling languages. Most chapters follow this pattern:

  • Introduce some domain theory.
  • Apply it to a PL problem.
  • Introduce the category theoretic approach to the material just studied.

I found that many category theoretic concepts started coming together for me after working through parts of this book (especially chapters 4, 5, 6, 8, and 10), and the background it provides is sufficient to tackle a more abstract treatment like MacLane.

Ah that sounds like the kind

Ah that sounds like the kind of thing I was looking for... cheers!

Calculational category theory

I also recommend Maarten Fokkinga's A Gentle Introduction to Category Theory --- the calculational approach. His dissertation, Law and Order in Algorithmics, has more.

There are also several category theory-related texts on PLT Online.