>>>>> "Thomas" == Thomas Fischbacher <[EMAIL PROTECTED]> writes:
Thomas> I've had a very superficial look at the multithreading code in CMUCL.
Thomas> Wouldn't it be possible to use the techniques employed there just as well
Thomas> to implement a good (even if maybe somewhat wasteful in terms of memory
Thomas> requirements) call/cc as we all know and love it? Having dynamic-wind in
Thomas> addition to call/cc would be just too good to be true. :-)
The mp code in cmucl works by copying the control stack, I think.
(I'm not really familiar with this.) So that seems that would give
you continuations.
Thomas> The question why I am asking is the following: I am just about to write
Thomas> some logic that relies on a large body of quite efficient CMUCL code,
Thomas> but requires a mild variant of nondeterministic choice as well.
Thomas> Essentially, I want to express ideas like "take any combination of five
Thomas> elements out of twelve, order does not matter here" and "take any
Thomas> combination of three of the remaining seven there". It doesn't have to be
Thomas> fast, but as the application requires some quite entangled logic, I would
Thomas> be very very glad if I could shift much of that complexity to the
Thomas> language by defining appropriate notions. And full continuation support
Thomas> would help *a lot* there.
Won't screamer help you do this kind of nondeterministic choice stuff?
(I'm not a screamer user either, so I'm not sure if that will do what
you want.)
Sorry, not very helpful today. :-(
Ray