Fwd: Capability Systems and Concurrency
"Mark Miller" <[email protected]>
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <[email protected]> |
3 of 6 ---------- Forwarded message ---------- From: Kris Zyp <[email protected]> Date: Tue, Jan 29, 2008 at 7:42 AM Subject: Re: Capability Systems and Concurrency To: Mark Miller <[email protected]> Cc: douglas-q6680F7qlBP2eFz/[email protected], [email protected], Brendan Eich <[email protected]> > Robust Composition: Towards a Unified Approach to Access Control and > Concurrency Control <http://erights.org/talks/thesis/> Very cool, you have done some significant work in this area. I am looking forward to reading it all the way through. BTW, One thing that really grabs my attention is the inclusion of persistence and distributed computing, as these have been my primary areas of interest and research. I don't know if you have ever heard of Persevere (http://code.google.com/p/persevere-framework/), it is an open source project that I developed that attempts to provide orthogonal persistence and distributed computing capability to JavaScript. There is a Persevere server that has a dynamic object database (capable of storing most objects that can be created by JS), and a JavaScript client that loads objects from the server, and as object graphs are traversed lazy loading is employed as appropriate. As JS objects are changed on the client they are persisted to the server. The server has a JS environment (Rhino) as well, and remote method calls can be made across the wire with a consistent view of the persistent object graph. It relies on several missing capabilities of JavaScript (or JScript anyway) including property access monitoring and control, and continuations (for composable flow with asynchronous lazy loading), and so it also does it's own JavaScript transformation (not too dissimiliar to Caja), in order to acheive the necessary JS capabiliities. The JavaScript compiler I use is heavily based on Brendan's Narcissus and Neil Mix's Narrative JS. Anyway, I found it very interesting that most of the work object-capability systems was closely tied to persistence. It certainly been a preeminent concern of mine that ES have at least some basic constructs for acheiving some level of object persistence (getters, setters, and introspection). I am looking forward to exploring and learning more about the relationship between persistence, capabilities, and concurrency. I will be reading you thesis as soon as I get a chance. Thanks, Kris -- Text by me above is hereby placed in the public domain Cheers, --MarkM