Re: OO versus RDB

From: J M Davitt <>
Date: Thu, 29 Jun 2006 14:00:58 GMT
Message-ID: <u2Rog.1288$>

Christian Brunschen wrote:
> In article <04Cog.3422$>,
> Bob Badour <> wrote:

>>Christian Brunschen wrote:
>>>In article <eZxog.3346$>,
>>>Bob Badour  <> wrote:
>>>>Christian Brunschen wrote:
>>>>>In article <>,
>>>>>erk <> wrote:
>>>>>>topmind wrote:
>>>>>>>[...] (Unlike OO, where encapsulation
>>>>>>>encourages each object/class to reinvent its own
>>>>>>>add/change/delete/cross-reference/search rules and interfaces so that
>>>>>>>they are all different for each project or shop.
>>>>>>Agreed. I wouldn't have a problem with inconsistencies if the languages
>>>>>>just offered some powerful basic operations. You can't even write
>>>>>>something in Java like this, which would be completely type-safe:
>>>>>>Set<LineItem> items =
>>>>>Perhaps somewhat interestingly, in a dynamic OO language such as 
>>>>>Smalltalk, Objective-C or Ruby, you can use the technique of Higher-Order 
>>>>>Messaging (HOM), as described in the 2005 OOPLSA paper 
>>>>><>, to do 
>>>>>something quite similar; in Objective-C syntax something like
>>>>> NSSet *lineItems =
>>>>>   [[[[order lineItems] selectWhere] status] equals:STATUS_SHIPPED];
>>>>You have given an example involving only restriction. 
>>>If I interpret things correctly, this is what is called 'selection' in 
>>>some places (suh as <> 
>>>and <>)?
>>Suggesting a synonym for restrict does not answer my question. 

> This particular paragrah of my response was not intended to answer your
> question, but instead to ensure that I had understood the question
> correctly, in particular because a quick google search for 'relational
> algebra operations' shows in the top five result only one, the fifth, that
> actualy refers to this operation as 'restrict'; the others call it
> 'select'. I just wanted to avoid any possible misunderstandings about the
> terminology in use, also because I am coming mainly from the direction of
> being a pragmatic software developer rather than a deep theorist on any
> particular subject. Please also keep this in mind if my use of terminology
> is imprecise or inaccurate - that will probably be because I have lots of
> things to learn.

For what it's worth:

In at least one case I know of, select and restrict are different: select involves comparison of an attribute to some explicit value while restrict involves comparison of two attribute values.

I asked Chris Date about his; he told me, "There's no difference" and the two terms seem to be interchangeable in virtually all writings.

[snip] Received on Thu Jun 29 2006 - 16:00:58 CEST

Original text of this message