Monday, November 2, 2009

Back from OOPSLA

... and now am in a very long email thread about the semantics of synchronous postMessage ('sendMessage') if different origin frames are allowed to run in different processes. Do we model it with yield? To who? Or can there be a deadlock? Will post once I have a semblance of understanding.

Good times. Big ups to the WebDSL and Angular teams for great demos.

2 comments:

Arjun said...

I look forward to your post on postMessage.

Leo Meyerovich said...

Haven't had a chance to describe it yet, but Mark Miller showed me a crazy example today. Imagine A.com includes frame B.com. Under Gazelle, they'd run B.com in a different processes. Consider the following programs:

A.com: "frame.location = 'C.com'; x = frame.location"

B.com: "window.location = 'D.com'"

... with the following interleaving:

A.com: frame.location = 'C.com';
B.com: window.location = 'D.com';
A.com: x = frame.location

What's x? This is even without bringing postMessage into the picture.