Re: Abstract Data Types

From: Jan Hidders <hidders_at_REMOVE.THIS.win.tue.nl>
Date: 21 Apr 2001 19:13:28 GMT
Message-ID: <9bsm4o$3qi$1_at_news.tue.nl>


Kazimierz Subieta wrote:
>
> "Jan Hidders" <hidders_at_REMOVE.THIS.win.tue.nl> wrote
> news:9bs37s$p2v$1_at_news.tue.nl...
> > Robert Schiller wrote:
> > > In the article Thirty Years of Relational: Extending the Relational
> > > Model by C.J. Date, Date talks about ADTs. What does he mean by
> > > abstract data types in the context of the relational model?
> >
> > Anything that can be described in terms of the operations that are
> > allowed upon it and has some kind of user readable representation. This
> > includes things like numbers, dates and strings but also more complex
> > things like lists, stacks and ... <drum roll> ... relations.
>
> Hmmmmm...not exactly. Relations are not abstract data types up to
> the time when one would define a complete and exclusive set of
> operations acting on relations. Stacks - yes, they are abstract data
> types because can be fully served by four classical operations:
> push, pop, top and empty. Can we imagine this set of operations for
> relations? Relational algebra? This is wrong.

No, it isn't. The algebraic rules for the relational algebra define relations up to isomorphism. Sure, they are incomplete in several other ways but so is the usual definition of the Stack ADT.

> [...] Besides, the relational algebra is far to be complete as
> a tool for serving all purposes of processing relations.

Whether the set of operations is computationally complete or not is irrelevant.

> Conclusion 1: The relational model is totatally incompatible with ADT.
> Conclusion 2: Date and Darven are demagic, undereducated relational
> bigots, please don't believe them.

Hmmmm... not exactly. :-)

-- 
  Jan Hidders
Received on Sat Apr 21 2001 - 21:13:28 CEST

Original text of this message