From: Peter Dimov (pdimov_at_[hidden])
Date: 2008-05-30 10:56:30
> "Peter Dimov" <pdimov_at_[hidden]> writes:
>> (Ignoring the problem in which f1 completes with an exception and f2 is
>> still active.)
> I think that's a non-problem. If f1 completes with an exception, f1 is
> ready, so (f1 || f2) is ready and should propagate the exception,
> regardless of the state of f2.
The "problem" (bad choice of a word on my part) is with choosing between the
behavior you outlined and the alternative, in which f1 || f2 only propagates
an exception when both f1 and f2 end with an exception. Both approaches make
sense (at least at first sight). I've chosen to implement the first in the
pseudocode because it's easier, but the implementability of the second
should probably be a concern as well.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk