Re: RM and abstract syntax trees

From: David Cressey <>
Date: Wed, 31 Oct 2007 16:47:14 GMT
Message-ID: <mk2Wi.2490$hd1.1653_at_trndny01>

"paul c" <> wrote in message news:iU1Wi.164795$1y4.53311_at_pd7urf2no...


> Here is a quote from Codd's book about pointers. (I snipped some
> sarcasm about AI programs):
> <quote>
> For many reasons, pointers are extremely weak in supporting relations.
> In fact, an individual pointer is capable of supporting no more than a
> relation of degree 2, and even then supports it in only one direction.
> Moreover, pointers tend to foster needlessly complex structures that
> frustrate interaction with the database by casual users, especially if
> they are not programmers.
> ... It is therefore a basic rule in relational databases that there
> should be no pointers at all in the user's or programmer's perception.
> For implementation purposes, however, pointers can be used in a
> relational database management system "under the covers," which may in
> some cases allow the DBMS vendor to offer improved performance.
> <end quote>

Good Quote!

One of the ways relational DBMSs use pointers "under the covers" is in indexes.

An index contains pointers "under the covers", associated with "index keys". The
index keys play the role that the poster might have intended to call "pointers", but they are data values copied from the relations (or relational tables, if you prefer).

The term "under the covers" is crucial here.

> I think the sensibleness of this rule doesn't come through until one
> goes beyond structural perceptions and looks at his RM operators. Then
> it's more obvious how his values from "domains" associate relations in a
> simpler and more universal way than pointers can.

Agreed. Good point. Received on Wed Oct 31 2007 - 17:47:14 CET

Original text of this message