Relational Operations Are Only For Databases

A lot of people seem to believe that RelationalOperationsAreOnlyForDatabases that they can not be used for other non persistent operations... I dont think that is a GoodIdea, I think that if we have AritmeticOperators? and BooleanOperators? as PrimitiveOperators? in our ProceduralLanguages or ObjectOriented languages, we should also have RelationalOperators? to manipulate local collections, that would open the door for very powerful optimizations like parallel search for data, parallel aggregate function execution, parallel translation from one data structure to another (from Dictionary to Array for example), etc. It would also make some algorithms a lot easier to maintain and ready, making software development more conceptual (like in ConceptProgramming)

See also: RelationalBreaksEncapsulation


Yes, that is what everybody says, RelationalBreaksEncapsulation... why we say that only against Relational? Procedural also breaks encapsulation, Functional also breaks encapsulation... in fact, if we were to have "perfect" encapsulation, then objects wouldn't collaborate with each other, if we can live with the fact that procedural needs to somehow manipulate objects, why we can not live with the fact that Relational also has to "touch" objects to do its work?

Functional and procedural don't actually break encapsulation. Functional accepts only those parameters to a function that you offer it, and so never needs to peek under someone else's skirt. Procedural performs as requested of it, which may involve sending messages to or accepting messages from other components... but it needn't knowledge of or access to how those other components are implemented.


ObjectVsModel, RelationalBreaksEncapsulation, JulyZeroSeven (for this an the related pages)


EditText of this page (last edited July 28, 2007) or FindPage with title or text search