J M Davitt wrote:
> Tony D wrote:
>> J M Davitt wrote:
>>
>>> CJD calls them type constraints; they define the set of values
>>> that constitute the type. Types are named, so the sets are named.
>>>
>>> The only thing I'd argue about in Cimode's definition is that
>>> operators are part of the data type. In fact, D+D make the point
>>> that the declaration of operators is orthogonal to the declaration
>>> of types -- given that the types are extant before the operators.
>>>
>>
>> Before I go, one last point; I'm not sure how the declaration of
>> operators can be *completely* orthogonal to type declaration; after
>> all, there's not much point in declaring a type if you can't actually
>> do anything with it. I understand that not all operators may be defined
>> when the data type is first introduced, but at least some operators
>> (equivalence definitely) will have to be there pretty much from the
>> get-go.
>
> The idea gave me pause, too. They emphasize that operators need not
> be declared as part of the type declaration. Yes, the RM requires
> an operator that can distinguish values of given types -- but that
> operator need not be declared before the type appears in an attribute.
i wonder if such postponement could be useful.
p
Received on Tue Jun 20 2006 - 23:35:40 CDT