On Wed, Jun 22, 2011 at 5:03 PM, Gregg Reynolds <d...@mobileink.com> wrote:

Well, you're way ahead of me.  I don't even "get" adjunctions, to tell you
> the truth.  By which I mean that I have no intuition about them; it's not so
> hard to understand the formal definition, but it's another thing altogether
> to grasp the deep significance.
>

In short, an adjunction is the relationship that for every "limit" of type
A, there is a corresponding limit of type "B", and vice-versa, realized by a
functor F that maps A to B and a functor F* that maps B to A.

Since F and F* map limits to limits, they preserve more algebraic structure
than just any old functors F :: A -> B and G :: B -> A.  In particular,
adjoint functors are "continuous".  (There are very strong parallels with
topology, owing to Category theory's history as a language for describing
topological constructs without reference to point sets.)

Every adjunction gives rise to a monad -- a generalized closure operator
(topology and lattice theory are very intimately related).  In particular,
if a category is complete (contains all its limits), then it will have the
same structure as the monad generated by an adjunction.

There are some good videos on youtube for gaining intuition about some of
these issues:
http://www.youtube.com/watch?v=loOJxIOmShE&feature=related
is a good place to start the series.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to