Re: [friam] Delegation is the Cornerstone of Civilization: Sharing in Sandstorm.io
Mark Miller <[email protected]> Mon, 11 May 2015 11:57:24 -0700
| Newsgroups | gmane.comp.capabilities.general |
|---|---|
| Message-ID | <CAK5yZYgLb-tgRv8erDoQWfSWJnpGaeM5UZv9oXbfqZhpuouR-w@mail.gmail.com> |
On Mon, May 11, 2015 at 11:41 AM, 'Ben Laurie' via friam < friam-/[email protected]> wrote: > On 11 May 2015 at 19:38, Mark Miller <[email protected]> wrote: > >> >> b) The idea of looking up "Mom" in "Bob"'s namespace seems to violate > >> >> the intent of petnames - i.e. I don't care who Bob thinks his Mom is, > >> >> I care who _I_ think it is. > >> > > >> > > >> > Interesting and valid point. Never occurred to me. Smalltalk '72 (yes, > >> > 1972) > >> > used 's (apostrophe ess) for what modern languages use infix dot for. > >> > Your > >> > observation points out an important semantic difference: "Bob.Mom" > would > >> > be > >> > more readily understood by programmers are who Bob's Mom is according > to > >> > Bob, rather than who I think his mom is. But only by programmers > >> > unfortunately. > >> > >> True, but I think beside the point - when is someone else's petname > >> for someone supposed to be useful to me? Surely in general it can't > >> be? > > > > > > > > From <http://www.erights.org/elib/capability/pnml.html>: > > > > Where do these exported name-space objects come from? Anyone should be > able > > to create and maintain a name-space for export, and publicly export a > > read-only facet. In an EChat- or PGP-like scenario, it is probably done > by > > deliberately marking a subset of one's pet-name name-space for export. > > That doesn't answer the question: sure, its where my access to your > name's comes from. But why do I care about your names? How do I know > what they mean? When you have only heard of <key>cap://dfgjkljfkluwry89</key> from me, all you know about <key>cap://dfgjkljfkluwry89</key> is that you have heard of it (so far[1]) only from me plus that I claim it has whatever properties I claimed that it has as part of the introduction. When I claim that it has relation "Mom" to me, you know something a bit more human meaningful than that it is identified by <key>cap://dfgjkljfkluwry89</key>. You know that I claimed at the time that it has relation "Mom" to me. Thus, perhaps a better mnemonic for the human portion of you to use for this entity is <your petname for me>.Mom where "." is, as you clarified, only an indication of my claim, not an indication of who you think my Mom is. In an ocap language, this is all that "." means anyway. "foo.bar()", whatever Foo's API claims that it means, must still be understood as being only according to foo. Likewise, this is all that naming paths mean in SPKI/SDSI. If you don't know of the designated entity by any other paths, this is all they can mean. I doubt anything stronger is possible. And anything weaker, like <key>cap://dfgjkljfkluwry89</key>, loses the crucial info that gives it any meaning at all to you. Do you have a different suggestion? [1] The timing issue is an orthogonal source of complexity and difference here. On an oo and ocap language, foo.bar() is generally understood as being according to foo that the time that expression is evaluated. In SPKI/SDSI, it merely means that foo made such a claim at some time in the past, but not so long ago that it has expired. PNML is unclear on what timing is meant. -- Cheers, --MarkM _______________________________________________ cap-talk mailing list [email protected] http://www.eros-os.org/mailman/listinfo/cap-talk