$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Tobias Schwinger (tschwinger_at_[hidden])
Date: 2005-06-30 06:49:29
John Maddock wrote:
>>OK, here is my current top-candidate:
>>
>> When classifying types it is often necessary to match against
>> several variations of one aspect.
>>
>> There are special variations which make this possible. These are called
>> *abstract*.
>>
>> The most important case is to match any variation; that is, to ignore
>> that aspect in the context of type classification. Because of this,
>>every
>>aspect has at
>> least one abstract variation named "unspecified_" plus the aspect name.
>
;-( - I knew this would happen... I accidently hit the "Send"-button before the
post was finished...
>
> That one also makes sense to me, I'm still not sure that "abstract" is the
> right word though :-)
>
> Explanation: to me if something is "abstract" then you need to add something
> to it, extend it in some way to make it concrete. What you're doing is
Interesting... This is exactly why I came up with this term in the first place:
An abstract variation of an aspect does not concretely describe the aspect
of the kind of type. It describes it, well, in an /abstract/ way:
Looking at classification, analog to pointer declaration, we constrain a (kind of)
type by specifying a special (kind of) type that only describes a category (but
nothing concrete).
Type synthesis is in some ways similar to a constructor call: actually we can't
create an "unspecified decorated" function type - we can only create an
undecorated or (member-)pointer-decorated or reference-decorated function type. So
there /is/ the kind of extension you describe, although implicitly done by a
default mechanism.
"Abstract" let's the user intuitively suspect something like an "external tree
structure" (i.e. only leafes carry user data), that's why I like it.
> combining several concrete definitions to form a non-specific union of some
> kind. So a quick trip to thesaurus.com suggests: "composite", "compound" or
> "mixed" as possible names, do any of these work for you?
>
I'm not convinced, yet. Maybe I'm having difficulties to fully understand you. Can
you perhaps try to clarify what makes "abstract" unsuitable in your opinion?
Thanks,
Tobias