Re: Abstract Data Types

From: Kazimierz Subieta <subieta_at_ipipan.waw.pl>
Date: Sat, 21 Apr 2001 17:22:43 +0200
Message-ID: <9bs8lc$glb$1_at_news.tpi.pl>


"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. Relational algebra operators are indexed by meta-language expressions, hence in fact the relational algebra consists of meta-operations, which are equivalent to the infite number od ADT operations. Besides, the relational algebra is far to be complete as a tool for serving all purposes of processing relations. SQL? Again, this is wrong - the same arguments, plus updating operations, which act not on relations, but on _stored_ relations, i.e. database states.

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.

Kaz Received on Sat Apr 21 2001 - 17:22:43 CEST

Original text of this message