[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

continuations



Kevin,

> I'm reminded of how obtuse the use of pointers seemed to
> me when I was learning C.  Many explanations limited
> themselves to the statement that a pointer is an address,
> as if that said it all.  It does explain everything, but only
> if you already understand it.  If you don't, the statement
> is gibberish.  You can't jump from that terse statement
> to making a linked list.

I agree.  The explanation that "a continuation represents the rest of
the program" is utterly useless as a pedagogic device.  It didn't help 
me understand continuations one bit, either.  I still shudder when
people describe them that way.

So, how about we got about this in two steps.  First, take a look at
the description of SEND/SUSPEND in

  http://www.cs.rice.edu/CS/PLT/Publications/#esop2001-gkvf

(I'm assuming that you have at least the slightest understanding of
Web programming.)  If you want, you can download and play with the
server yourself to build your intuition.

Once you have some grasp for SEND/SUSPEND (it's not that hard, so
don't let this daunt you), let me know.  I'll explain CALL/CC to you
in terms of it.

Shriram