Cover of Basic category theory for computer scientists

Basic category theory for computer scientists

by Benjamin C. Pierce · first published 1991

16mentions
12recommended by
14HN commenters
2008–2025first – last mentioned

86% recommend14% neutral

Why HN recommends it

A short, terse, and complete introduction to category theory aimed at programmers. It covers the material needed for understanding monads and type theory without requiring a heavy mathematical background.

Summarised by Claude from recommending comments

Affiliate links. As an Amazon Associate I earn from qualifying purchases.

Mentions per year

30 2007: 0 mentions2008: 2 mentions2009: 0 mentions2010: 2 mentions2011: 1 mention2012: 0 mentions2013: 2 mentions2014: 0 mentions2015: 3 mentions2016: 0 mentions2017: 2 mentions2018: 1 mention2019: 1 mention2020: 1 mention2021: 0 mentions2022: 0 mentions2023: 0 mentions2024: 0 mentions2025: 1 mention2026: 0 mentions200720172026

What Hacker News says

  • eindiran · Apr 19, 2019 · Recommends

    …blog post on that site or get the ebook/physical book to leaf through. For a more theoretical/less applied approach that's still relevant to computer science/programming, check out Benjamin Pierce's Basic Category Theory for Computer Scientists[1]. It's a very good introduction to the parts of Category Theory that are useful for [theoretical] CS, and delves into semantics of programming languages, types, and concurrency a fair amount. [0] https://bartoszmilewski.com/2014/10/28/category-theory-for-p...…

    on “Applied Category Theory” ↗
  • adamnemecek · Jan 16, 2017 · Recommends

    …https://www.amazon.com/Hands-Machine-Learning-Scikit-Learn-T... Not released yet but I've been reading the drafts and it's a nice intro to machine learning using modern ML frameworks, TensorFlow and Scikit-Learn. # Basic Category Theory for Computer Scientists https://www.amazon.com/gp/product/0262660717/ref=as_li_ss_tl... Not done with the book but despite it's age, hands down best intro to category theory if you care about it only for CS purposes as it…

    on “Ask HN: What's the best computer science book you've read recently?” ↗
  • mattrepl · Apr 1, 2008 · Recommends

    …type theory and semantics (Pierce, see below, also wrote several books on types in programming languages) and offers a different representation of computational flow (monads, arrows). Benjamin Pierce's "Basic Category Theory for Computer Scientists" (not online) is terse and complete [1]. Wikipedia is good for definitions and there's also a Wikibook on category theory: http://en.wikibooks.org/wiki/Category_theory There are some brief, informative,…

    on “Things that separate the men from the boys and/or major concepts in software” ↗
  • rohanshah · Apr 29, 2015 · Recommends

    This is a great series. I also highly recommend Benjamin Pierce's book "Basic Category Theory for Computer Scientists" if you are interested in this http://mitpress.mit.edu/books/basic-category-theory-computer...

    on “Category Theory for Programmers” ↗
  • eindiran · Jul 27, 2020 · Recommends

    If you have a CS background and are looking to dig in to category theory a bit more, I would recommend checking out Benjamin Pierce's Basic Category Theory for Computer Scientists. It's a nice, concise introduction to the topic that examines a few very interesting applications to CS. https://www.goodreads.com/book/show/1810837.Basic_Category_T...

    on “Ask HN: What OR Are there some multiple perspective books in mathematics?” ↗
  • iratsu · Feb 6, 2008 · Recommends

    …Theory for the Working Mathematician by Saunders Maclane. It is an excellent book, but I must also warn that it is not an easy book and probably requires a fair bit on mathematical maturity. Second is Basic Category Theory for Computer Scientists by Benjamin Pierce. It is much more of an introductory book and provides many examples in Computer Science which are useful to those doing theoretical CS.

    on “Learning Math” ↗
  • ekidd · Jun 5, 2010 · Recommends

    …many of the purely mathematical uses of category theory have a similar quality—smuggling theorems from one branch of mathematics to another. (One pretty reasonable introduction to category theory is "Basic Category Theory for Computer Scientists"[2], but there may be something better.) [1] http://www.inf.uni-konstanz.de/dbis/publications/download/TG... [2] http://www.amazon.com/Category-Computer-Scientists-Foundatio...

    on “Databases are Categories” ↗
  • sb · Nov 24, 2010 · Recommends

    Because it was not mentioned until now, one of the following might probably come in handy: - Basic Category Theory for Computer Scientists by Benjamin C. Pierce (from "Types and Programming Languages" fame) - Practical Foundations of Mathematics, by Paul Taylor (has other interesting work on his homepage as well; http://www.paultaylor.eu/~pt/prafm/;…

    on “Mathematics for Computer Science” ↗
  • fnord123 · Feb 25, 2015 · Recommends

    There is also Benjamin Pierce's Basic Category Theory for Computer Scientists: http://mitpress.mit.edu/books/basic-category-theory-computer...

    on “Category Theory Reading Lists” ↗
  • EvilTerran · Aug 20, 2017 · Recommends

    …on my bookshelf from here. It's a great overview of the foundational concepts in PLT; Pierce's style is remarkable, he writes the most readable academic text I've ever seen. (I also own & admire his Basic Category Theory for Computer Scientists; I'm yet to brave his Advanced Topics in TaPL - I'm sure it's very good, but the contents list intimidates me.)

    on ““What next?”” ↗
  • codeismath · Aug 7, 2025 · Recommends

    …North Carolina to enjoy on my beach vacation last week! Got some salt water in those pages. Also speaks to Category Theory.) For Category Theory: "The Joy of Abstraction" (2023) by Euginia Cheng "Basic Category Theory for Computer Scientists" by Benjamin C. Pierce "Conceptual Mathematics: A first introduction to categories" by Lawvere and Schanuel "Categories for the Working Philosopher" by Landry

    on “Why is it worth spending time on type theory? (2013)” ↗
  • phaedrus · Sep 25, 2011 · Recommends

    …theory. To use your example specifically: in fact I do not care about set theory, algebra, and topology, I just wanted to know whether it would be useful for my specific problem. So I read Pierce's Basic Category Theory for Computer Scientists, and found it useful. This insistence that if you want to learn W you must first spend N years learning X, Y, and Z is the kind of elitist bullshit that puts laymen off learning abstract math. If you…

    on “Category Theory for Dummies [pdf]” ↗
  • dkarapetyan · Sep 10, 2015 · Recommends

    Monads come from category theory. You can certainly know what they are without ever having programmed. "Basic Category Theory for Computer Scientists" and "Category Theory (Oxford Logic Guides)" are good places to start.

    on “Monads Are Not Metaphors (2010)” ↗
  • eindiran · Jan 5, 2018 · Recommends

    …theory last year. I quite enjoyed "Category Theory for Programmers" as a practical introduction. You can read it online here: https://bartoszmilewski.com/2014/10/28/category-theory-for-p... I also read "Basic Category Theory for Computer Scientists", which was a bit less practical but very good. https://mitpress.mit.edu/books/basic-category-theory-compute...

    on “Ask HN: What CS and Math books did you read in 2017?” ↗
  • jcurbo · Jul 26, 2013 · Mentions

    …other places, that you can sort through to see what works for you. I have yet to make that determination for myself, but there's plenty to choose from. I actually picked up a copy of Benjamin Pierce's "Basic Category Theory for Computer Scientists" a few years ago based on someone's recommendation, way before I got into Haskell, and didn't make the connection until I picked up his book on type theory recently (while researching a paper on FP) and…

    on “Haskell for Web Developers” ↗

Keyboard shortcuts

/
Focus search
j / k
Next / previous book
Enter
Open focused book
Esc
Close / go back
g h
Go to Home
g t
Go to Top all-time
g m
Go to Most recommended
g r
Go to Rising
g f
Go to For You
?
Show this help