[cap-talk] "Composite", was "Same" key
David Hopwood
david.nospam.hopwood at blueyonder.co.uk
Mon Feb 19 11:28:39 CST 2007
Charles Landau wrote:
> At 3:44 PM -0800 2/16/07, Mark S. Miller wrote:
>
>>I'd represent my position as
>>
>> 1 >=0
>> (MarkM) Object Composite
>>
>>This is consistent with my
>>
>># For compactness of description, we often aggregate a set of objects into
>># a composite.
>>
>>which is not meant to exclude the null set. This is important when using
>>aggregation to reason about a multiplicity of concrete situations.
>
> Why can't you just say "a set of objects" instead of "a composite"
> when you mean to include the null set? To rephrase your example:
>
> Say Alice is one of Bob's clients. Let's call the set of all of Bob's
> other clients "Rest". If Alice uses Bob correctly and Bob
> is defensively consistent, then, no matter what action is taken by Rest,
> Bob will never give bad service to Alice.
Sandro Magi also asked a similar question:
> David Hopwood wrote:
>
>> I withdraw the suggestions of "group" and "abstraction", and propose
>> "object-group" and "object-abstraction" instead.
>>
>> This should address the point about the word "abstraction" being too general,
>> which would also apply to "group".
>
> Since MarkM already describes the objects as a set, why not just stick
> with the standard "set" terminology?
Several reasons:
- At any given point in an execution, some set of objects are members of the
object-group. This membership can change during execution (because new
objects are allocated within the group, or it gains members from outside,
or loses members). So an object-group is not defined by a single
mathematical set.
In a meta-model it would have a type like ExecutionState -> Set[Object]
(or equivalently ExecutionState -> Set[Capability]), rather than Set[Object].
- An object-group has additional concepts associated with it. For example,
at a given point in the execution, all objects in the system can be
partitioned into three sets with respect to each object-group:
* External objects, which are not members of the object-group.
* Facet objects, which are members referenced by an external object.
* Hidden objects, which are members not referenced by any external object.
IMHO it is clearer to talk about, e.g. facets of object-groups, than about
facets of sets.
If "aggregated subjects" in Fred Spiessen's KBM model (see section 5.3.1 of
<http://www.evoluware.eu/fsp_thesis.pdf>) correspond to object-groups, as I
think they do, then we could unify the terminology used by KBM and by the
object-capability model. In that case "set" would be even less appropriate
for an aggregated subject.
- (minor reason) the word "set" on its own is too vague, and
"set of objects" is one syllable longer than "object-group".
--
David Hopwood <david.nospam.hopwood at blueyonder.co.uk>
More information about the cap-talk
mailing list