
Gregg Reynolds wrote:
BTW, I'm not talking about Haskell's Functor class, I guess I should have made that clear. I'm talking about category theory, as the semantic framework for thinking about Haskell.
In that case, I even less see why you are not introducing category theory proper. Certainly, if one wants to use a semantic framework for thinking about something, one should use the real thing, not some metaphors.
The idea is that each type (category) is a distinct universe. The essential point about functors cross boundaries from one category to another.
What are the categories you are talking about here?
Moreover, you are mixing in the subject of algebraic data types (all we know about (a, b) is that (,), fst and snd exist).
It's straight out of category theory. See Pierce http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=7986
Which part specifically?
Personally, I do not see why one should explain something easy like functors in terms of something complicated like quantum entanglement.
The metaphor is action-at-a-distance. Quantum entanglement is a vivid way of conveying it since it is so strange, but true. Obviously one is not expected to understand quantum entanglement, only the idea of two things linked "invisibly" across a boundary.
How does the fact that a morphism exists between two objects in some category link these objects together? It doesn't change the objects at all. In your own words: How can action (at-a-distance) be about mathematical values? Tillmann