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

Re: call-with-current-continuation



Scott writes, with John's AMEN!!
> The obvious response is that users would practically never actually use
> continuations that way.  The answer, as in scheme, is "so what?"
> Continuations are an invaluable abstraction for implementing language
> features, even if end users never touch them.

i'm not sure that's true about continuations in the presence of fork and exec.
on the other hand, people surely have said that about lambda, and i'm betting
very hard that that's not true.

as to Scott's concrete proposal about externalizing continuations by dumping
the entire machine state to a file (actually, in the context of es, a string
would make more sense), my first reaction was nausea, but, on second thought,
it does make some sense, and could be quite nice for debugging, if the dumped
form were readable.  i don't know, but we will consider it at the appropriate
time in es's development.

as for now, we have a shell to write.  as we've said many times so far, due to
lack of time and the fact that what we're already doing with es is experimental
enough that we don't know whether people will really want to use it, the first
version will not be properly tail recursive or have first-class continuations.

so, let's get this topic on the back burner.  we are interested in where v2
es is going to go, but v1 is a more immediate concern.  please tell us, either
by private mail or to the list, what you do think is missing from es.  knowing
the source, job control will probably never be in the shell, but just about
everything else is fair game.  of course, mechanisms which subsume other ones
or allow us to move things from primitives to es are preferable.

now back to regularly scheduled programming.