
A Gentle Introduction to Category Theory [pdf] - ihodes
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.78.7317&rep=rep1&type=pdf
======
xyzzyz
What's the deal with category theory on HN? Seriously, how is it interesting
or relevant without introducing it along with concepts from fields in which it
is of main use (e.g. (homological) algebra and algebraic toplogy)? I don't
think I'd be able to appreciate, or even understand CT without having a
thorough understanding of concepts it tries to generalize -- hell, I do have
trouble to consider it useful even with it. Since I do not believe that HN us
full of mathematicians (even though there are a few) researching algebraic
topology or homological algebra, I wonder who reads and posts such things
here.

~~~
Robin_Message
Category theory is much beloved of functional programming researchers, at
least in my computer science department, mostly as a way of analysing and
conceptualising type theory.

For example, one of my friends is working on showing equivalences between I/O
in Haskell (purely functional) and Lucid (demand-driven dataflow). Category
theory shows a neat relationship between the models and a way to move between
them.

~~~
xyzzyz
So one should introduce category theory along with its usage. Category theory
makes little sense without it -- it turns to mundane symbol (or rather,
diagram) manipulation. The category-theoretical notions do not seem to have
any relevance if you do not know what other notions they try to generalize.
What I mean is that it is more natural to notice that various products in all
kind of mathematical structures have some universal property in common, than
to say that these are examples of categorical notion of product. Or, it is
more natural to notice that van Kampen's theorem really says something about
connection between fundamental groups of a space and its subspaces, than to
say that fundamental grupoid of a space is a colimit of a diagram created by
fundamental grupoids of certain families of subspaces, with arrows being
induced by inclusions. The second approach in case of van Kampen theorem (and
many more, actually) is useful when you want to prove or use van Kampen
theorem, because it is a bit easier to prove an universal property of a
colimit than to prove that the fundamental group of a space is a free product
product of the fundamental group of its subspaces with an amalgamation along
fundamental group of their intersection. Nevertheless, categorical approach
does not provide you with the intuition which initially led to the formulation
of this theorem. I believe that the case is similar with your friend's work --
it's his intuition and insight which led him to notice this equivalence, and
category theory only helps him formulate his thoughts in an elegant way.

Learning category theory before learning more substantial facts is in my
opinion going totally in backward order. Or maybe I'm just an (metaphorically)
old grump and refuse to acknowledge the revolution just like mathematicians in
the beginning of twentieth century were refusing to accept set theory.

~~~
mjw
I'm inclined to agree.

I've tried a few times to learn category theory in the abstract, and struggled
to motivate myself when I couldn't clearly "see" the structure and the
application, in categories (like Hask or Vect) which I know reasonably well.

I'm glad it exists though, so I know where to look if I want some kind of
deeper unifying intuition about structural ideas in whatever area of maths I'm
studying, which might help me connect them to other areas, and as I read more
graduate-level maths I imagine more of these opportunities will crop up.

Perhaps it's one of those things where it's helpful to learn the basic
definitions early on, and their implications in categories (initially probably
fairly straightforward ones) which you already know.

But then, just keep it gently percolating while you study other things, rather
than trying to force it and make sense of adjoint functors etc before you've
studied enough applications to justify the abstraction.

------
danthemilkman
For my money a good introduction to CT must have compelling examples, which I
don't quite see here. To understand basic category theory this is a fantastic
introduction <http://www.mscs.dal.ca/~selinger/papers.html#graphical> . It is
not meant to be an introduction to CT but it's basic CT with some amazing
examples.

