Re: Coercion, membranes, serialization, and printing are the same thing
James Noble <[email protected]> Sun, 20 Oct 2013 13:36:02 +1300
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <[email protected]> |
On 12/10/2013, at 23:34 PM, Tom Van Cutsem <[email protected]> wrote: > As it happens, I'm working on trying to express another possible use case of membranes: the ability to confine objects through ownership types (seminal paper: Ownership types for Flexible Alias Protection, Clarke et al., OOPSLA '98 <http://www.cs.cornell.edu/courses/cs711/2005fa/papers/cpn-oopsla98.pdf>). certainly membranes and ownership must be related - although the precise relationship I hasn't been worked out. > Last year at the Dynamic Languages Symposium, there was a paper about expressing these ideas in a dynamically typed language (i.c. Smalltalk) <http://scg.unibe.ch/archive/papers/Wern12c.pdf>. However, they don't use proxies to implement the confinement, but dynamic checks embedded in the runtime. I believe this approach suffers from dynamic scoping issues, and I think membranes based on proxies might provide an alternative solution that is more aligned with ocaps. (At least, the authors of the DLS paper are aware of ocaps, they cite the Paradigm regained paper, and they're aware of membranes) there's an older paper on dynamic ownership here - http://dl.acm.org/citation.cfm?id=1297090 & attached. I think the question of where & how ownership ("property rights") should be enforced is an interesting one. Patterns like being careful about private or protected names can give effect to ownership in Java; in Javascript, nested lambda scopes can protect names --- but you'll need another (static?) analysis to ensure that objects that are intended to be confined are not leaked out. (see eg. here: http://dx.doi.org/10.1145/949343.949339, http://www.cs.tau.ac.il/~msagiv/courses/encapsulate/p82-vitek.pdf) But in terms of capturing programmer's intention ---- audibility --- being able to say "this engine is mine", and being sure that gives rise to some dependable semantics, is going to be safer than depending on rather fiddly programming patterns. > If anyone is interested in exploring these ideas further, drop me a line. I'm always interested in ownership stuff, always happy to talk --- and Sophia is too, I'm sure. cheers James _______________________________________________ e-lang mailing list [email protected] http://www.eros-os.org/mailman/listinfo/e-lang
dls11-gordon.pdf
(application/pdf, 355.4 KB) - not displayed