From: Mark S. Miller [[email protected]]

> One thing I think Domenic is missing that I also missed at first: Once we 
> introduce .flatMap, then we need a distinct "accepted" state that is neither 
> "fulfilled" nor "rejected". The issue is that p.then does not fire until the 
> promise p is fulfilled or rejected. If q is pending, and p is accepted to q, 
> then p.flatMap will fire but p.then will not yet fire. When q becomes 
> fulfilled or rejected, then p becomes fulfilled or rejected and p.then fires. 
> Thus, p is following q. So when p and q are both promises, p follows q when p 
> is accepted to q or when p adopts q. This hair splitting goes beyond any 
> previous conversations I've had with anyone, but becomes necessary to account 
> for the behavior or both .flatMap and .then under AP2.

Isn't this just what we've been calling "resolved"? As in "p is resolved q, but 
still pending because q is pending"?

I suppose that is ambiguous because you could resolve p to a non-promise-like 
and the behavior is a bit different. Perhaps you're proposing that "resolve p 
with q" will make p resolved with q, and we will additionally say either that p 
is accepted with q, if q is a promise-like, or fulfilled with q, if q is 
non-promise-like. Does that sound accurate?
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to