Promise
From Erights
(Difference between revisions)
(→Calls and sends: tests were broken: 1 never returned, and had a stray <Promise> -- checking resolve's value instead) |
(make stub) |
||
Line 1: | Line 1: | ||
- | A [[promise]], in [[E]], is a | + | A [[promise]], in [[E]], is a [[ref]] whose referent has not yet been determined -- it is an [[ref states|unresolved reference]]. |
- | + | Every promise has a corresponding [[resolver]] (though it may not be explicitly used), which constitutes the [[permission]] to cause it to resolve to a given other reference (which may itself be a promise). | |
- | + | Promises are often created by performing [[eventual send]]s or by explicit [[Ref (object)#promise/0|promise pair creation]]. | |
- | + | A [[remote promise]] is a promise whose resolver is in a different [[vat]]. | |
- | + | {{stub}} | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | { | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + |
Revision as of 19:20, 14 October 2008
A promise, in E, is a ref whose referent has not yet been determined -- it is an unresolved reference.
Every promise has a corresponding resolver (though it may not be explicitly used), which constitutes the permission to cause it to resolve to a given other reference (which may itself be a promise).
Promises are often created by performing eventual sends or by explicit promise pair creation.
A remote promise is a promise whose resolver is in a different vat.
- This page is a stub; it should be expanded with more information. If doing so, check the original E web site and the mailing list archives for content which could be moved into this page.