On Oct 14, 2013 12:10 AM, "Kuivila, Ronald" <rkuivila@xxxxxxxxxxxx> wrote:
> My recollection it that a problem with passing down a special value is that in the most natural implementation it causes
> substreams to move forward an increment.
> That will break any reuse of streams (i.e. interactively stopping and restarting a single event stream in a performance).
Yes, that was it. I was rephrasing the problem. Passing in a stop signal is not necessarily a wrong approach, but here, the stop signal (nil) was the same as the default inval (nil) that is normally passed to free-standing value streams.
If we have a stop signal that is not nil, then value patterns could check for that and not advance in that case. But it would mean adding an "if" to *every* value pattern -- that is, every pattern would have to take cleanup into account. That's perhaps too much of a burden. With EventStreamCleanup, the only patterns that have to worry about cleanup are the ones that have something to clean up.
hjh