Re: Data-E for Caja mystery
"Mark S. Miller" <[email protected]>
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <[email protected]> |
On Wed, Jul 22, 2009 at 3:13 AM, Kevin Reid<[email protected]> wrote: > On Jul 21, 2009, at 12:08, Mark Miller wrote: > >> Hi Kevin, >> >> In thinking about Data-E for Caja, I don't see how to repair the lack >> of cycles. Data-E for E relies on E promises becoming their resolution >> in place. This isn't possible for Caja or JavaScript. I don't see what >> to do instead that fits within the overall Data-E design. Thoughts? > > *CapTP* requires promises too. So I'm just going to put in the Ref > architecture and work on making it reasonably unobtrusive. But since promises can't become their resolution, I don't see how to make it reasonably unobtrusive within the Data-E framework. For example, say we have var x = [1, null, 3]; x[1] = x; cajita.freeze(x); If we then serialize and unserialize x into newx, AFAICT we'd end up with newx[1] being a resolved promise whose resolution is newx. Am I missing something? Or do we just live with unserialization interposing resolved promises at random places in the unserialization? -- Cheers, --MarkM