Re: Clean Object Class Design -- Circle/Ellipse
Date: Sun, 22 Jul 2001 22:24:52 GMT
Message-ID: <3b5ad464.1618119793_at_news.grpvine1.tx.home.com>
On Sun, 22 Jul 2001 00:42:02 -0400, "Bob Badour" <bbadour_at_golden.net> wrote:
>>My original point was to show Date's mistake
>>of confusing sets and types.
>
>He does not do that. In his work, he very explicitly points out that
>relations are sets and not types. Domains are types, which consist of a set
>of values and a set of operators on those values.
>
>
The distinction between relations and domains is not the same
as the distinction between sets and types.
In particular, I was reacting to Date's
The "real" world answer is no, but Date's reasoning (?) would lead
to qualified yes (integers are reals, but the set of update operations
that apply to integer variables is neither a subset nor a superset of
the set of such operations that apply to real variables).
What does that mean? Are we talking about +, * or := ?
Is it still true that "any model of inheritance in which type
Integer is not considered to be a subtype of type Real
" Type Inheritance: Is a Circle an Ellipse?" ( www.dbdebunk.com),
where he writes:
<quote>
In my opinion, therefore, any "model" of inheritance in which type
CIRCLE is not considered to be a subtype of type ELLIPSE
can hardly be said to be a good model of reality.
...
(in Date/Darwen model) the set of update operations that apply to
circle variables is neither a subset nor a superset of the set of such
operations that apply to ellipse variables.
</quote>
To put bluntly, " Type Inheritance: Is a Circle an Ellipse?" documents lack of understanding of types (and OO), and the usefulness of Date's inheritance model approaches zero. No wonder that "such a model seems to be conspicuous by its absence in the industry at large, at least at the time of writing."
Marc Gluch
Mindtap Inc.
Received on Mon Jul 23 2001 - 00:24:52 CEST