
Came up with an alternative to the container metaphor for functors that you might find amusing: http://syntax.wikidot.com/blog:9

Gregg Reynolds wrote:
Came up with an alternative to the container metaphor for functors that you might find amusing: http://syntax.wikidot.com/blog:9
You seem to describe Bifunctors (two objects from one category are mapped to one object in another category), but Haskell's Functor class is about Endofunctors (one object in one category is mapped to an object in the same category). Therefore, your insistence on the alien universe being totally different from our own is somewhat misleading, since in Haskell, we are specifically dealing with the case that the alien universe is just our own. Moreover, you are mixing in the subject of algebraic data types (all we know about (a, b) is that (,), fst and snd exist). Personally, I do not see why one should explain something easy like functors in terms of something complicated like quantum entanglement. Tillmann

On Sun, Feb 15, 2009 at 11:09 AM, Tillmann Rendel
Gregg Reynolds wrote:
Came up with an alternative to the container metaphor for functors that you might find amusing: http://syntax.wikidot.com/blog:9
You seem to describe Bifunctors (two objects from one category are mapped to one object in another category), but Haskell's Functor class is about Endofunctors (one object in one category is mapped to an object in the same category). Therefore, your insistence on the alien
Yeah, it needs work, but close enough for a sketch. 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.
universe being totally different from our own is somewhat misleading, since in Haskell, we are specifically dealing with the case that the alien universe is just our own.
The idea is that each type (category) is a distinct universe. The essential point about functors cross boundaries from one category to another.
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
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.

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

On Sun, Feb 15, 2009 at 11:53 AM, Tillmann Rendel
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.
Don't forget the part explaining this is just a sketch.
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?
Take your pick.
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?
Sections 1.5, 1.6, 1.9, 2.1, etc. 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?
Not between two objects in some category; between two objects in different categories. That's the whole point. Functors preserve structure. Action-at-a-distance is a metaphor meant to enliven the concept. You use a map in your home category to map remote objects, by beaming it up through the telefunctor. Your map stays home but is quantum entangled with the remote map. Heh heh. I'm not saying it's for everybody, but I think it's kinda fun. -g

On Sun, 2009-02-15 at 18:53 +0100, Tillmann Rendel wrote:
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 sooner you realize that Gregg is, apparently, only interested in half-baked philosophizing and wordplay, the better off you'll be. Of the things he claims to be interested in, Haskell, category theory, formal semantics, none have yet made an appearance on his blog.

2009/2/15 Gregg Reynolds
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.
This is unrelated to haskell, but it's so common a misconception that I have to debunk it. What actually happens, if you run through the math, is that when you entangle two particles it affects the entangled property such that, when you later start spreading information about the entangled state - the universe is effectively divided in whatever the possible results are, MWI style, but once the information contacts the related entangled information from the other particle, inconsistent results cancel out and you get a big fat zero for a wavefunction. Consistent results reinforce, so it's still unitary as a whole. See, it all adds up to normality. Pay no attention to the bazillion timelines being continually destroyed behind the scenes, please; anyhow, you can never actually *observe* inconsistency, so if your notion of "self" is flexible enough you can just claim you continue along the consistent timeline.

On Sun, Feb 15, 2009 at 7:54 PM, Svein Ove Aas
2009/2/15 Gregg Reynolds
: 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.
This is unrelated to haskell, but it's so common a misconception that I have to debunk it.
What actually happens, if you run through the math, is that when you entangle two particles it affects the entangled property such that, when you later start spreading information about the entangled state - the universe is effectively divided in whatever the possible results are, MWI style, but once the information contacts the related entangled information from the other particle, inconsistent results cancel out and you get a big fat zero for a wavefunction. Consistent results reinforce, so it's still unitary as a whole.
See, it all adds up to normality. Pay no attention to the bazillion timelines being continually destroyed behind the scenes, please; anyhow, you can never actually *observe* inconsistency, so if your notion of "self" is flexible enough you can just claim you continue along the consistent timeline.
Oh yeah. The crucial point is, this view has no spooky action at a distance involved. The speed of light limit is maintained - nice and elegant, really.

Quantum entanglement is related to a different kind of categorical product. So, the metaphor is misleading. But, that being said : I want to thank you for your blog. A bit polemic but very interesting. Christophe.
Came up with an alternative to the container metaphor for functors that you might find amusing: http://syntax.wikidot.com/blog:9 _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (6)
-
alpheccar
-
Anton van Straaten
-
Derek Elkins
-
Gregg Reynolds
-
Svein Ove Aas
-
Tillmann Rendel