3 ms·
The examples the author chose are kind of hand-wavy, unix pipes in full are obviously not categories. But I recognize how hard is to come up with examples that
by freyrs3 12y ago
The examples the author chose are kind of hand-wavy, unix pipes in full are obviously not categories. But I recognize how hard is to come up with examples that aren't contrived and that programmers can relate to without knowing much mathematics.
That's the inherent difficulty in discussing category theory solely in terms of programming, it's hard to see the forest for the trees if you don't have a bunch of well-defined categories you can draw examples from and interrelate.
In an undergraduate course one would typically start with examples from algebraic topology which has a lot of great cross-categorical relations, like how the homology group of a topological space is an example of a functor from the category of groups to the category of topological spaces.
- nmrm 12y ago> That's the inherent difficulty in discussing category theory solely in terms of programming Worse, I don't see any point in categorical models if you want to think solely in terms of programming. > one would typically start with examples from algebraic topology My initial exposure was along these lines as well, although the idea of a "course" in category theory seems a bit odd (not in the sense of wrong or bad, just not common-place). Talking about categories in the context of everyday functional programming (even where the connections are correct) always seemed abstruse and a bit silly. If you're not using categorical models, what's the point (other than giving fancy names to things)? And if you don't have some background in algebra or topology and a specific research goal, why build the models?
- freyrs3 12y agoWell I mean, there is a lot of utility in programming with categorical concepts in Haskell. There's plenty of libraries in the Haskell ecosystem that wouldn't even exist if it weren't for drawing upon category theory for guidance. Pipes is probably the best example of this school of thought on library design. [1] My point was mostly that I don't think there is a path to really understanding the full generality of category theory through functional programming alone, one has to go learn the pure mathematics as well. [1] https://hackage.haskell.org/package/pipes-4.1.1/docs/Pipes-Core.html#g:2 https://hackage.haskell.org/package/pipes-4.1.1/docs/Pipes-C...
- RBerenguel 12y agoWhen we were having the Categories subject in Algebra II (maths degree) half-jokingly with a few friends we built a category (with operations, universal properties and objects and all that funny and weird stuff) based on the columns of the university courtyard (this one: http://blocmat.files.wordpress.com/2011/03/matefestub-ba.jpg http://blocmat.files.wordpress.com/2011/03/matefestub-ba.jpg)