comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <sb463ba@l1-hrz.uni-duisburg.de>
Subject: Re: Windows Ada database support.
Date: Tue, 30 Nov 2004 21:10:11 +0000 (UTC)
Date: 2004-11-30T21:10:11+00:00	[thread overview]
Message-ID: <coinjj$slj$1@a1-hrz.uni-duisburg.de> (raw)
In-Reply-To: fb2r8sc2921f$.81d9kelvndes$.dlg@40tude.net

Dmitry A. Kazakov <mailbox@dmitry-kazakov.de> wrote:
: On Tue, 30 Nov 2004 16:07:06 +0000 (UTC), Georg Bauhaus wrote:
: 
:> Dmitry A. Kazakov <mailbox@dmitry-kazakov.de> wrote:
:>: On Mon, 29 Nov 2004 22:05:50 +0000 (UTC), Georg Bauhaus wrote:
:>:>:>   See also Frank Piron's comment about implicit cursors in
:>:>:> PL/SQL.
:>:> 
:>:> Wrong abstractions in PL/SQL too?
:>: 
:>: Is in your opinion PL/SQL better than Ada?
:> 
:> PL/SQL has a specific purpose, and a rich set of facilities for handling
:> relations.
: 
: 1. Why relations should be handled?
: 2. Why Ada cannot handle them?

One reaon that Ada, as is, cannot handle the same set of problems
as PL/SQL with the same ease is, I think, that PL/SQL is a programming
language with built in support for database operations. You'd have to
define at least everything that has been defined (or not) for PL/SQL,
taking into account all Ada features and requirements.



:> I don't see why anyone using an Oracle DB would want to write
:> stored procedures in Ada?
: 
: Fair enough. Compare: "I don't see why anybody using C would want to switch
: to Ada". Indeed, they don't.
 
Some do switch from C to Ada, because Ada solves a problem.
If the task at hand is to write a conditionally triggered
procedure that processes a value before it is inserted into
a table, and hides this fact away from a client, that's fairly
easy in PL/SQL. It's just not there in Ada, AFAIKT.
  What is your estimate of the effort it takes to merge this
into Ada packages at a nice level of abstraction? For comparison,
have a look at APQ, then at GNADE.

 
: You could simply say: we need no generic data base interface.
 
In fact we have convenience objects, but still it is necessary that we
can get through to the database.

 
: So the point is: "real-time constraints cannot be met if data structures
: are extensible"?

If real-time constraints cannot be met using a DB system storing
more fancy data structures, I have to look for an alternative
solution. The opposite direction away from RDBs seems to be a big problem;
as has been mentioned, we have some object-relational DBs, 
some more advance O-O DBs, and some DBs that can store XML-like
documents.

Have a look at Microsoft's WinFS plans. Consider how long it takes
for the biggest and richest software company to come up with something
working. Substract compatibility issues and the profit made by selling
interim improvements. Is it easy to build something that covers
more than RDBMSs do?


:> And they do not always match the types of application data, which
:> can be of a rather fixed shape.
 
: Why?

There are things whose property set doesn't change frequently ;-)

: From my experience, there was no single case, when our customer didn't
: ask for an extensible data model [and was told that he/she cannot afford
: it]. Sooner or later they will break the wall.

Yes, sounds familiar, but first, hitting the wall is not equal to ruin
as the technicians like to think ;-) and second, you'd have to demonstrate
that an extended data model can be realized by just extending types.
It might be necessary to add or change change types and add or change
relations between types etc.


:>: The same way we program concurrent distributed applications in Ada!
:> 
:> And you know what people say about task switching? Rendevous has
:> its temporal aspects, how do you abstract them away?
: 
: I wouldn't. But it is perfectly possible. In C, which has no tasks, an
: entry is replaced by a procedure with an additional parameter TimeOut.

So adding a TimeOut parameter is an abstraction of a task entry?

 
: Basically I am unable to see any crucial difference between a data base
: engine or embedded controller or JVM. Tell me
: 
: 1. Why Ada cannot be targeted there?

Who said so?

: 2. Why Ada will be less efficient than SQL?

Again, Ada /= SQL, see above. Efficiency here is not necessarily
a matter of PLs, but of how an operation can be performed regardless
of implementation language at either end of the communication. If
the program is blocking resources due to generalized expectations
about cursors in some nice DB abstraction there is an efficiency
problem.

 
: They will invest in other things. Nowadays, nobody invests in chopping
: firewood...

Well, some do. (I've had to find firewood and briquettes for some 10 years,
so I know. And those who have nice firesides in their homes need it, too.)

 
:>:> What has Ada versus Assembly got to do with resource consumption of
:>:> communicating programs (Ada program <-> database program?)
:>: 
:>: It is because you present performance as an argument for using a low level
:>: mechanism.
:> 
:> I present resource consumption as a real time constraint
:> on the structure of data and on techniques of data access.
: 
: But you do not explain why SELECT * is less resource consuming than
: anything else.

I was trying to explain that a program (being written in Ada or not)
needs to be able to release database resources when proper working of
the database software requires that this be done. If an abstraction
doesn't offer this possibility, then I cannot use the abstraction.

Since I am in no position to discuss the difficult task of designing
a modern database system, I'll leave this to others now. :-)


-- Georg



  reply	other threads:[~2004-11-30 21:10 UTC|newest]

Thread overview: 96+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-24 12:31 Windows Ada database support Mark Doherty
2004-11-24 15:04 ` Marius Amado Alves
2004-11-24 18:35 ` Pascal Obry
2004-11-24 19:17   ` Alex R. Mosteo
2004-11-24 19:30     ` Dmitry A. Kazakov
2004-11-24 22:32       ` Ching Bon Lam
2004-11-25  1:03 ` David Botton
2004-11-25 17:50   ` Warren W. Gay VE3WWG
2004-11-26  9:15     ` Dmitry A. Kazakov
2004-11-26 18:36       ` David Botton
2004-11-27  8:59         ` Dmitry A. Kazakov
2004-11-28  0:46           ` David Botton
2004-11-28  9:51             ` Dmitry A. Kazakov
2004-11-28 10:23               ` Pascal Obry
2004-11-28 11:03                 ` Dmitry A. Kazakov
2004-11-28 14:38                   ` Martin Dowie
2004-11-28 16:51                     ` Marius Amado Alves
2004-11-28 19:50                       ` Martin Dowie
2004-11-28 20:49                       ` Christopher Browne
2004-11-28 17:29                     ` Dmitry A. Kazakov
2004-11-28 17:47                       ` Marius Amado Alves
2004-11-28 18:56                         ` Dmitry A. Kazakov
2004-12-06 14:57                           ` Warren W. Gay VE3WWG
2004-11-28 18:45                   ` Pascal Obry
2004-11-28 19:13                     ` Dmitry A. Kazakov
2004-11-28 20:04                       ` Pascal Obry
2004-11-29  9:04                         ` Dmitry A. Kazakov
2004-11-29 10:07                         ` Adrien Plisson
2004-11-29 11:00                           ` Alex R. Mosteo
2004-11-29 13:12                             ` Frank Piron
2004-12-01 16:19                           ` Pascal Obry
2004-12-02 10:37                             ` Marius Amado Alves
2004-12-02 10:58                               ` Frank Piron
2004-12-03  2:50                               ` John B. Matthews
2004-11-28 20:36                     ` Marius Amado Alves
2004-11-29  1:40                       ` Georg Bauhaus
2004-11-29 10:30                         ` Marius Amado Alves
2004-11-29  1:28       ` Georg Bauhaus
2004-11-29  8:53         ` Dmitry A. Kazakov
2004-11-29 11:09           ` Georg Bauhaus
2004-11-29 12:01             ` Dmitry A. Kazakov
2004-11-29 14:07               ` Georg Bauhaus
2004-11-29 18:04                 ` Dmitry A. Kazakov
2004-11-29 22:05                   ` Georg Bauhaus
2004-11-30 11:00                     ` Dmitry A. Kazakov
2004-11-30 13:46                       ` Ole-Hjalmar Kristensen
2004-11-30 15:04                         ` Dmitry A. Kazakov
2004-11-30 16:09                         ` Georg Bauhaus
2004-11-30 16:07                       ` Georg Bauhaus
2004-11-30 18:52                         ` Dmitry A. Kazakov
2004-11-30 21:10                           ` Georg Bauhaus [this message]
2004-12-01  9:11                             ` Dmitry A. Kazakov
2004-11-29 12:56       ` Marius Amado Alves
2004-11-29 13:26         ` Dmitry A. Kazakov
2004-11-29 15:02       ` Frank Piron
2004-11-29 15:58         ` Marius Amado Alves
2004-11-29 18:16         ` Dmitry A. Kazakov
2004-11-30  7:14           ` Frank Piron
2004-12-06 14:48       ` Warren W. Gay VE3WWG
2004-12-06 16:29         ` Dmitry A. Kazakov
2004-12-06 17:52           ` Warren W. Gay VE3WWG
2004-12-06 19:44             ` Georg Bauhaus
2004-12-06 20:49             ` Dmitry A. Kazakov
2004-12-07  5:16               ` Warren W. Gay VE3WWG
2004-12-07 10:29                 ` Dmitry A. Kazakov
2004-12-07 15:49               ` Georg Bauhaus
2004-12-07 21:29                 ` Dmitry A. Kazakov
2004-12-08  2:24                   ` Georg Bauhaus
2004-12-08  9:05                     ` Dmitry A. Kazakov
2004-12-08 10:03                       ` Ole-Hjalmar Kristensen
2004-12-08 10:56                         ` Dmitry A. Kazakov
2004-12-08 11:19                           ` Marius Amado Alves
2004-12-08 12:51                             ` Frank Piron
2004-12-08 13:43                               ` Dmitry A. Kazakov
2004-12-08 13:41                             ` Dmitry A. Kazakov
2004-12-08 16:09                               ` Georg Bauhaus
2004-12-08 19:46                                 ` Dmitry A. Kazakov
2004-12-09 12:20                                   ` Georg Bauhaus
2004-12-09 12:59                                     ` Dmitry A. Kazakov
2004-12-08 15:58                           ` Georg Bauhaus
2004-12-08 19:43                             ` Dmitry A. Kazakov
2004-12-09 11:58                               ` Georg Bauhaus
2004-12-09 13:27                                 ` Dmitry A. Kazakov
2004-12-09 18:58                                   ` Georg Bauhaus
2004-12-10 10:22                                     ` Dmitry A. Kazakov
2004-12-10 14:28                                       ` Georg Bauhaus
2004-12-10 15:14                                         ` Dmitry A. Kazakov
2004-12-08 15:52                         ` Georg Bauhaus
2004-12-08 20:22                           ` Dmitry A. Kazakov
2004-12-09 12:12                             ` Georg Bauhaus
2004-12-09 12:59                               ` Dmitry A. Kazakov
2004-12-09 18:45                                 ` Georg Bauhaus
2004-12-09 12:22                             ` Ole-Hjalmar Kristensen
2004-12-09 14:03                               ` Dmitry A. Kazakov
2004-12-10 20:47                   ` Simon Wright
2004-11-25  2:18 ` bubble
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox