At 7:27 AM +0900 8/7/03, Ben Giddings wrote:
>I have been interested in these continuation-thingys for a while now, so now
>that the subject came up, I decided to take a good look.
>
>I now think I understand how they work, and when they might be used, but that
>still leaves a few questions:
>
>1) Why do they have the strange syntax they have

They don't--there's no inherent strange syntax to them. The syntax 
comes from the language implementing the continuation semantics.

>2) Why don't they have more "meat" to them?

Because there's not much to them. Really, there isn't. Continuations 
(or, as I have recently been scolded about, first class 
continuations) are pretty simple things.

>I found a bunch of websites all talking about continuations:
>
>http://www.ai.mit.edu/~gregs/ll1-discuss-archive-html/threads.html#01372
>http://www.ps.uni-sb.de/~duchier/python/continuations.html
>...
>
>The summary is that Continuations are essentially "goto with parameters", or
>even more simply, like setjmp, longjmp.

Well... no. that's not quite right. There's rather more to 
continuations than just that. Continuations are more a Location with 
Environment and History. Closures are Locations with Environment, and 
Functions are just Locations.

>The second issue is why Continuations have nothing but a .call method. 
>Because they should encapsulate things like stack and program-counter values
>at the time of the call, it would seem to me like these are useful things to
>have available.

It's generally considered Really Evil to look at anything inside a 
continuation. Darned useful, though...
-- 
                                         Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
dan / sidhe.org                         have teddy bears and even
                                       teddy bears get drunk