comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <rm.tsoh+bauhaus@maps.futureapps.de>
Subject: Re: The future of Ada is at risk
Date: Sun, 06 Jan 2008 21:13:07 +0100
Date: 2008-01-06T21:13:07+01:00	[thread overview]
Message-ID: <1199650387.8241.27.camel@K72> (raw)
In-Reply-To: <186n1dt34b84r.1jjg9vmd48kbs.dlg@40tude.net>


On Sun, 2008-01-06 at 13:23 +0100, Dmitry A. Kazakov wrote:
> On Sun, 06 Jan 2008 13:05:28 +0100, Georg Bauhaus wrote:
> 
> > On Sun, 2008-01-06 at 09:42 +0100, Dmitry A. Kazakov wrote:
> > 
> >>> http://www.djangoproject.com/documentation/model-api/
> > 
> >> Yes, that looks pretty much like it should be, IMO.
> > 
> > Did you notice that they provide anyone with direct access
> > to SQL in order to do non-trivial relational things?
> 
> You can do assembler insertions in Ada. The relation must be same.

Quite to the contrary, SQL is a very high level language.
OO classes are closer to attribute sets than they are to
relational expressions---unless they try to implement a
better SQL. Go ahead! ;-) A relational expression has yet to
find its way into pure Ada. If you have something ... ;-)


> Ada design never considered premature, close-to-hardware optimization as a
> priority.

However, the Ada design explicitly considers close-to-hardware
programming a priority because of resource consumption and
timing. A similar situation exists with real-world SQL programming:
when a result set must be established within soft real-time
constraints and within a given amount of available memory.
Updates must not take longer than a given duration.
Working within these constraints is not in any way premature
optimization IMHO, but rather a way to achieve the minimal goals.
What will be *mature* optimization if fulfilling the requirements
using high level, non-trivial SQL is premature optimization?


> Further I doubt very much that performance problems could be imposed by
> bindings.

In bindings such as the one you have seen, joins, key relations etc.
are built in the scripting language. The reason given is because MySQL
ISAM tables support very few features of basic SQL. "So we do
it ourselves...", i.e., try to reinvent the wheel, with moderate
success. The Ruby on Rails community quite honestly advises
against deviation from the Rails ways (... :). This means, if
a database module requires slightly more relational power than
standard framework objects have, you should "revert" to SQL (to
the higher conceptual level that is).

This is why every now and then someone suggests ActiveRelation
instead of ActiveRecord. So far, there are no results AFAICT.

>  Usually such problems have algorithmic nature.

Database performance problems are just like functional
language performance problems: The simple and elegant
expressions tend to be too resource consuming and must be
rewritten until they become efficient.
How would a purely relational type system remove this issue?

>  I don't see how
> reasonably designed DB bindings would force you to choose a wrong
> algorithm...

Something in this sentence is begging the question... ;-)





  reply	other threads:[~2008-01-06 20:13 UTC|newest]

Thread overview: 126+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-29  3:06 The future of Ada is at risk Rico Secada
2007-12-29 10:19 ` Pascal Obry
2007-12-29 19:24   ` Jerry van Dijk
2007-12-29 11:14 ` Dmitry A. Kazakov
2007-12-29 11:21 ` Georg Bauhaus
2007-12-30 12:30   ` Florian Weimer
2007-12-30 19:42     ` okellogg
2007-12-30 20:22       ` Florian Weimer
2007-12-31  0:21         ` Samuel Tardieu
2007-12-30 23:30       ` Simon Wright
2007-12-31  8:12     ` I. Levashew
2007-12-31  8:43       ` Florian Weimer
2007-12-31 10:16       ` Rico Secada
2007-12-31 10:31         ` Florian Weimer
2007-12-31 15:20         ` Georg Bauhaus
2007-12-31 21:35           ` Paul
2008-01-01 12:41           ` Florian Weimer
2007-12-29 16:19 ` I. Levashew
2007-12-29 16:24 ` anon
2007-12-29 19:16   ` Rico Secada
2007-12-30  0:38     ` The future of C# " Georg Bauhaus
2008-01-07  8:01   ` The future of Ada " Nasser Abbasi
2008-01-07 11:09     ` Robert A Duff
2008-01-07 11:54       ` Nasser Abbasi
2007-12-30  8:04 ` Phaedrus
2007-12-30  8:56   ` Pascal Obry
2007-12-30 21:42     ` Phaedrus
2007-12-30 23:08       ` Brian May
2007-12-30 23:32         ` Phaedrus
2007-12-31 12:33       ` I. Levashew
2008-01-02 10:46         ` Colin Paul Gloster
2007-12-30 11:08   ` Georg Bauhaus
2007-12-30 22:23     ` Phaedrus
2007-12-30 21:30   ` adaworks
2007-12-30 23:33     ` Phaedrus
2007-12-31  0:33   ` Samuel Tardieu
2008-01-01 14:14 ` Gautier
2008-01-01 14:46   ` Dmitry A. Kazakov
2008-01-04  8:45 ` Agyaras
2008-01-04  9:36   ` Pascal Obry
2008-01-04 13:13   ` Georg Bauhaus
2008-01-06  9:34     ` Agyaras
2008-01-06 10:26       ` Dmitry A. Kazakov
2008-01-06 12:03       ` Georg Bauhaus
2008-01-06 13:03       ` Frank J. Lhota
2008-01-07  3:46       ` Brian May
2008-01-08  2:22       ` Randy Brukardt
2008-01-04 23:17   ` Brian May
2008-01-05 10:22   ` Ludovic Brenta
2008-01-05 15:16     ` Robert A Duff
2008-01-05 15:36       ` Dmitry A. Kazakov
2008-01-05 15:46         ` Robert A Duff
2008-01-05 16:39           ` Georg Bauhaus
2008-01-05 17:14           ` Dmitry A. Kazakov
2008-01-06 22:08             ` Robert A Duff
2008-01-09  8:19   ` ahab
2008-01-05 10:21 ` Michael Bode
2008-01-05 10:30   ` Ludovic Brenta
2008-01-05 10:55     ` Michael Bode
2008-01-05 13:09       ` Ludovic Brenta
2008-01-05 13:32         ` Michael Bode
2008-01-05 20:36           ` Jeffrey R. Carter
2008-01-05 22:50             ` Michael Bode
2008-01-05 23:42               ` Jeffrey R. Carter
2008-01-05 11:11     ` Georg Bauhaus
2008-01-05 11:40       ` Dmitry A. Kazakov
2008-01-05 13:29         ` Georg Bauhaus
2008-01-05 14:35           ` Dmitry A. Kazakov
2008-01-05 17:42             ` Georg Bauhaus
2008-01-05 18:40               ` Dmitry A. Kazakov
2008-01-05 23:47             ` Brian May
2008-01-06  7:03               ` Vadim Godunko
2008-01-06  8:42               ` Dmitry A. Kazakov
2008-01-06 12:05                 ` Georg Bauhaus
2008-01-06 12:23                   ` Dmitry A. Kazakov
2008-01-06 20:13                     ` Georg Bauhaus [this message]
2008-01-06 20:50                       ` Dmitry A. Kazakov
2008-01-06 22:12                         ` Georg Bauhaus
2008-01-07  0:11                 ` Brian May
2008-01-07  5:23                   ` Per Sandberg
2008-01-08  0:04                     ` Brian May
2008-01-08  6:53                       ` Simon Wright
2008-01-08 14:35                         ` Vadim Godunko
2008-01-08 20:24                   ` Graham
2008-01-08 20:44                   ` Pascal Obry
2008-01-06  9:23               ` Pascal Obry
2008-01-07  0:05                 ` Brian May
2008-01-05 20:34   ` Jeffrey R. Carter
2008-01-05 20:52     ` Michael Bode
2008-01-05 21:40       ` Georg Bauhaus
2008-01-05 23:45       ` Jeffrey R. Carter
2008-01-06 11:16         ` Michael Bode
2008-01-06 19:20           ` Jeffrey R. Carter
2008-01-06 20:27             ` Michael Bode
2008-01-07 10:23   ` Stephen Leake
2008-01-07 17:54     ` Michael Bode
2008-01-11  7:21 ` Phaedrus
2008-01-11  8:49   ` Maciej Sobczak
2008-01-11 13:10     ` Peter C. Chapin
2008-01-11 15:41     ` Hyman Rosen
2008-01-12 14:31       ` Surfer
2008-01-12 20:54         ` Gautier
2008-01-11 19:58     ` Tero Koskinen
2008-01-11 21:41       ` Georg Bauhaus
2008-01-11 13:02   ` framefritti
2008-01-11 15:29     ` Peter C. Chapin
2008-01-11 17:24       ` Gary Scott
2008-01-11 18:20   ` Jeffrey R. Carter
2008-01-11 18:51     ` Gary Scott
2008-01-12  0:21       ` Jeffrey R. Carter
2008-01-12  8:15         ` Pascal Obry
2008-01-12 10:11           ` Brian May
2008-01-12 10:24             ` Pascal Obry
2008-01-12 17:43               ` Gary Scott
2008-01-12 18:14                 ` Pascal Obry
2008-01-12 22:24                   ` Georg Bauhaus
2008-01-13  3:54                     ` Ray Blaak
2008-01-13 14:05                       ` (see below)
2008-01-14  1:46                         ` Ray Blaak
2008-01-14  1:49                         ` Ray Blaak
2008-01-23  2:52                 ` adaworks
2008-01-12 10:47             ` Dmitry A. Kazakov
2008-01-11 22:32   ` Robert A Duff
2008-01-12  4:06     ` Phaedrus
2008-01-12 15:29       ` Georg Bauhaus
2008-01-12 20:55     ` jtg
replies disabled

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