
On Sat, 16 Oct 2004 15:04:11 -0400, Arkadiy Vertleyb wrote
A few months ago I had a discussion at comp.object, where I tried to introduce the RTL, hoping people can think of some unexpected solutions that can be derived from combining OO and relational approaches. But it seems that people are very much polarized. Most OO people don't want to consider an RDB for anything other then persistence. And most relational people don't really think C++ is the correct way to go anyway.
Well, they are probably all wrong ;-) OO and relational approaches are part of the solution fabric -- not ends in themselves -- some people can't seem to get that...
I think relational algebra is a very good mechanism when you want to share data, and provide different views of it (that's why it is so popular in huge systems). Since the language (relational relational algebra) is so simple, it's possible to introduce as much redundancy (indexing) as one wants (at any level of a relational expression -- not only tables) and maintain this redundancy automatically and efficiently as underlying tables are changed. That was the goal of our second stage of development, and we've done this.
Agree.
That said, the level of interest is not as high as the interface to actual RDB's -- because once you start using an actual RDB you want to defer the join logic etc into the database engine itself and are mostly concerned with the resulting data and mapping it to C++ types, etc...
Yes, but again, do you always really want to use that RDB or you just don't have alternatives?
Yes, I really do need the database because, for example, I have multiple distributed client apps that need access to the data, I want to build 'tactical' (small low use utility apps) in a scripting language using rapid development tools, I'm writing a new app that builds on something that already uses an RDB, etc. So there are real reasons, and I hate that when I'm writing a C++ app it's so hard to get that data in a style that is consistent with modern C++. Having said all that there's much database over-use on projects the could clearly benefit from the approach RTL offers... Jeff