[Swift-devel] problems with external dependencies
Ben Clifford
benc at hawaga.org.uk
Wed Mar 25 08:43:07 CDT 2009
(this belongs on swift-devel - i moved it)
On Sun, 22 Mar 2009, Ian Foster wrote:
> I can't recall whether we talked about this before, but if we could
> choose to run in a mode whereby compound procedures wait for all input
> parameters, that could simplify debugging. But maybe the semantics are
> now rich enough that this would not necessarily be correct.
There are a few things in the above paragraph that I think can be
considered separately:
* should it be possible to make compound procedures wait for all of their
inputs to be closed, rather than letting components do this?
perhaps. you suggest debugging. I can't think of other use cases. So see
other stuff I have written saying that debugging can perhaps be approached
in other ways.
* does this simplify debugging
unsure. I've never come across the need for it when I've been doing
things. I'm unsure if others have. It feels to me a bit like "heres
something to jiggle dependency handling" but without being clearly more
useful.
* is an execution mode the way to do this?
I think no. It would make the language more symmetrical to allow
compound procedures to wait for their inputs (at the expense of
parallelism). I think making this a "mode" is the wrong thing to do. It
might be better expressed as a modifier on procedure declarations, eg:
(making up terms strict and ready):
strict (int i)myproc(external ds) { .... }
or
(int i)myproc(ready external ds) { ... }
signifying (respectively) that all inputs must be ready, or that the
specified input must be ready.
That would not be hard to implement.
--
More information about the Swift-devel
mailing list