Textbook in PDF format
Category theory has become a fundamental tool in theoretical computer science, and especially for the meta-theory of programming languages. This book provides a self-contained introduction to the subject, especially meant for students in computer science. The main constructions and terminology of category theory, including limits, functors, natural transformations, adjoints, and cartesian closed categories are presented, and their use is illustrated through several applications to programming language design and semantics, including a detailed investigation of recursive domain equations