
11 Mar
2012
11 Mar
'12
1:22 p.m.
On 12-03-11 12:39 PM, Chris Smith wrote:
(p1>> unawait x)>>> p2 = (p1>>> p2)<* unawait x -- this one tripped me up I don't think this could reasonably hold. For example, you'd expect
On Sun, Mar 11, 2012 at 10:30 AM, Mario Blažević
wrote: that for any p, idP>> p == idP since idP never terminates at all. But then let p1 == idP, and you get something silly. The issue is with early termination: if p2 terminates first in the left hand side, you don't want the unawait to occur.
No, idP does terminate once it consumes its input. Your idP >> p first reproduces the complete input, and then runs p with empty input.