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=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,131f06967722ab4b X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news2.google.com!news4.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local1.nntp.dca.giganews.com!nntp.rcn.net!news.rcn.net.POSTED!not-for-mail NNTP-Posting-Date: Tue, 28 Dec 2004 11:08:23 -0600 Sender: jsa@rigel.goldenthreadtech.com Newsgroups: comp.lang.ada Subject: Re: Ada 2005? References: <1103344064.372396.51420@c13g2000cwb.googlegroups.com> <1n1v6175zrtcc.2g6ewdvu7ei5$.dlg@40tude.net> <1103568585.285484.237450@c13g2000cwb.googlegroups.com> <20xbhf8rjd33.t7dojmf0ky12.dlg@40tude.net> <1nl7gq6tozeyw.146x7at50m0lr.dlg@40tude.net> <1vj2pp9437gal.1b1lyqe3o973k$.dlg@40tude.net> <1ttqv5msigzua$.12l6jurw2zmd6$.dlg@40tude.net> <1j02qdx8hrd7o.1d5se652uerrr$.dlg@40tude.net> <1myqjpkliibqc$.qwe4gdpt4pi0.dlg@40tude.net> From: jayessay Organization: Tangible Date: 28 Dec 2004 12:36:42 -0500 Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii NNTP-Posting-Host: 209.6.25.79 X-Trace: sv3-ATdkzHeIQD3EPo0oVG1+LM24+YKIKU+yWL56USVpDmsRnWKMbCBW9WnQ7v8OvGADfLux2Wbn0ymGDOU!vNkc+fTtKTZPKUSnqSrvQX88V7elYsuibkMbAspsQletvUWlnC3r8XiGm3h0iMzaW1xAnzYqspDb X-Complaints-To: abuse@rcn.net X-DMCA-Complaints-To: abuse@rcn.net X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.22 Xref: g2news1.google.com comp.lang.ada:7263 Date: 2004-12-28T12:36:42-05:00 List-Id: "Dmitry A. Kazakov" writes: Generally speaking I don't think you understand these issues enough to have a profitable discussion. It seems clear that you are only interested in engaging various sophistries in some weird effort to "win" something or other. This is likely my last effort to get dawn to break over your marblehead. > >>> However, these rules really have nothing to do with restricting > >>> "dynamic declarations" (Ada is static and so of course there are no > >>> dynamic declarations at all). > >> > >> This is wrong. > > > > So where can you _declare_ a new entity at runtime? > > See ARM 3.1. That section specifically notes that declarations are _declared_ at _compile_ time. At _runtime_ they are _elaborated_. So, you are just plain wrong. > >> Not all dynamic declarations are of primitive operations. > >> Ada is a statically *typed* language. > > > > Yeah. So? > > So dispatching is not equivalent to halting problem. I think you need to learn how to read things better. No one ever said that multiple dispatching was _equivalent_ to the halting problem. What I pointed out was that statically determining in all cases that dispatching will not result in a runtime error is equivalent to the halting problem. The reason I pointed this out is that you claimed that it was indeed possible to never have a runtime error with dispatching. You were and are just plain wrong. > > The general case is simply one where you cannot determine at compile > > time things like uninitialized variables, > > Class-wide variables cannot be left uninitialized. It would be nice if you quit playing these silly sophistry games. Let's take the full quote: "The general case is simply one where you cannot determine at compile time things like uninitialized variables, the specific type of a class wide variable at any given point in time, etc. These still apply to Ada. I'm not sure you actually understand any of this as you keep making these irrelevant or incorrect claims." Note the important part about unknown specific types of class wide variables at any given point. This is especially apropos wrt class wide parameters. > > the specific type of a class > > wide variable at any given point in time, etc. > > Present us any example of (but not one classified as a bounded error). Bounded errors are those that are not caught at all. Are you really this thick? I have stated clearly that the issue is that dispatching in general can result in runtime errors that cannot be determined at compile time. > >> case, it is trivial to find a match. Moreover it requires bounded time. > >> Otherwise, I guess polymorphic calls would never be adopted in Ada. The > >> problems with implementation of MD in Ada lie elsewhere. > > > > MD is irrelevant to to this point, which is the need for runtime > > exceptions. > > So it has nothing to do with halting problem? Fine. Then what's the point? Do you have any idea how stupid this makes you look? > > Ada has these and you can easily get them with it's > > polymorphic calls (which cannot be MD), i.e., Constraint_Error can be > > raised. What's more, some of these constraint errors are _exactly_ > > the equivalent of "method not found" > > Nope, in Ada it is the equivalent of "method is final and defined to raise > Constraint_Error". It is a fundamentally different case. First, you are wrong here - it is indeed the equivalent of "method not found". The constraint error will be issued in exactly the same circumstances. It is extremely easy to construct examples of this. Second, I don't see your "method is final" anywhere in the LRM. But in any case, the examples I am talking about are _missing_ methods, not ones that exist but happen to be "final ones". > > No, the original, as I noted here was and is the one under discussion > > and it is quite proper. > > OK, I'll make it easier for you: Let's have the whole quote again you sophist: "No, the original, as I noted here was and is the one under discussion and it is quite proper. In particular it means that Ada has no MD. There is nothing controversial about this, and several books (including even the Rationale) discuss how an Ada programmer can achieve a simple version of MD by rolling their own via redispatch." MD is all about _multiple_ dispatches, not a single dispatch on multiple operands of multiple parameters. That you cannot understand this is amazing. Just take a look at the rationale or Barne's book or Cohen' or ... They all acknowledge this and that Ada has no MD. Instead of trying to understand things here you are simply playing sophist and trying to redefine MD so that you can attempt to claim that Ada has it. Why you want to do this is beyond me. > > The point is an elegant solution cannot be expressed cleanly without > > recourse to pounding because the language lacks the proper > > expressivity. > > or that the person lacks some vital knowledge about software design... I think it has become clear that it is you who lacks the vital knowledge. > > Yes. This means that in this case, intelligent people will _abandon_ > > the tool (in this case the language) so that the elegant correct > > solution can be expressed without pounding. > > Then you are in a wrong group. It seems that people in c.l.a are > pretty unintelligent to keep on using Ada, or maybe, there must be > something wrong with your theory... Here is a hint: Neither of your stupid options is correct. /Jon -- 'j' - a n t h o n y at romeo/charley/november com