[cap-talk] Reducing the authority of a file browser in a capability OS.

Rob Meijer capibara at xs4all.nl
Wed Dec 23 13:53:17 PST 2009


On Wed, December 23, 2009 20:48, David-Sarah Hopwood wrote:
> The private namespace approach assumes that files belong to particular
> apps. That is not the case; files have a format, and can potentially be
> used by *any* app that (directly, or indirectly via a converter)
> understands that format.

This is definitely not what I meant to convey. In my view, the application
is simply the course grained equivalent of the class in OOP, while the
(pseudo) persistent process is the course grained equivalent of the
object.
Giving the application ownership would thus be be the equivalent of static
class variables, while giving a pseudo persistent process ownership would
be the equivalent of using private member variables.
Following this pattern of equivalence at different granularities, I can
not come to any other conclusion that the file-chooser type of powerbox
would be an elaborate version of the manager design pattern implemented as
a singleton.

I thus read your above statement as :

"Your approach assumes that data object belong to particular
class (static class variables). That is not the case; data object have an
interface, and can potentially be used by *any* class that understands
that interface.(implying need for a singleton)"


What I am advocating however is the object private member variable as
being the least authority solution, also after transposing it to the
relevant level of granularity where apps are the classes, pseudo
persistent processes are the objects and file chooser powerboxes are the
singletons.

If in OOP you had to choose the least authority solution and had to choose
between putting data into private member vars, or instead using the
manager singleton to store your data, I'm pretty sure you would opt for
using the private member vars over the manager singleton. So either I am
making some major mistake in transposing the OOP granularity concepts to
the relevant level of granularity, or you are simply failing to recognize
the equivalence.

Rob



More information about the cap-talk mailing list