
Claus,
It may be possible to get the two representations together by applying the predicate to a "reader" for x, generated from x, which would complement something like Hood's "writer" for x, generated from x. Just as the context demanding parts of x isn't aware of triggering observations, the predicate depending on parts of x need not be aware of having to wait for those observations, and MVars could provide the plumbing between the implicit readers and writers. See below for an outline.
Thanks for this further suggestion. A solution along these lines might be possible, but it would still be restricted in comparison with something based on a more "global" awaitEval: the availability of data would only be detected if the demand that prompted its evaluation was in the context of the assertion-tagged expression. Yes? Regards Colin R