From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,229ea0001655d6a2 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news3.google.com!news.germany.com!newsfeed01.sul.t-online.de!t-online.de!newsfeed.arcor.de!newsspool1.arcor-online.net!news.arcor.de.POSTED!not-for-mail From: "Dmitry A. Kazakov" Subject: Re: Generic Package Newsgroups: comp.lang.ada User-Agent: 40tude_Dialog/2.0.15.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Reply-To: mailbox@dmitry-kazakov.de Organization: cbb software GmbH References: <1177539306.952515.222940@s33g2000prh.googlegroups.com> <1177601484.444701.171560@r35g2000prh.googlegroups.com> <1177672290.8055.6.camel@localhost> Date: Fri, 27 Apr 2007 14:06:07 +0200 Message-ID: NNTP-Posting-Date: 27 Apr 2007 14:06:07 CEST NNTP-Posting-Host: 2a888aff.newsspool3.arcor-online.net X-Trace: DXC=kEWZ\[h`?lceoCI^f\Y]EaMcF=Q^Z^V3h4Fo<]lROoRaFl8W>\BH3YbYd@Rkgb3e On Fri, 27 Apr 2007 13:11:30 +0200, Georg Bauhaus wrote: > On Fri, 2007-04-27 at 11:00 +0200, Dmitry A. Kazakov wrote: >> On Thu, 26 Apr 2007 22:52:58 +0100, Simon Wright wrote: >> >>> "Dmitry A. Kazakov" writes: >>> >>>> You cannot iterate a relational table, because there is no order >>>> defined on it. >>> >>> Why would that stop me iterating over all the rows? >> >> Because iterating presumes following an order. > > Any real table in an existing computer has a "natural" > ordering suitable for iterating an operation for all > elements: data in a real computer can be uniquely identified. No this is wrong even on a real computer. The DB engine could shuffle the rows asynchronously to your application. There could be other applications playing with the table. The table might spread over memories of several computers and different levels cashes. You have to bring transactions, replications and other synchronizing stuff to make any sense out of "natural order." > The fact that the ordering is hidden behind the functional > Iterate abstraction doesn't make it go away for any > snapshot of rows. It does. Semantically, table /= a snapshot of. That is. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de