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,80435549e92d4e0c X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news4.google.com!news.glorb.com!newsfeed.mesh.ad.jp!newsfeed.media.kyoto-u.ac.jp!news1.optus.net.au!optus!newsfeed.pacific.net.au!nasal.pacific.net.au!not-for-mail Newsgroups: comp.lang.ada Subject: Re: Charles container library usage examples From: David Trudgett Organization: Very little? References: <87mzmssqbq.fsf@ludovic-brenta.org> <4321a2e0_3@newsfeed.slurp.net> <43240c16$0$27555$9b4e6d93@newsread4.arcor-online.net> Message-ID: User-Agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.4 (gnu/linux) Cancel-Lock: sha1:bjCnzl/joFbRYZMHjpFwlLNKG8M= MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 12 Sep 2005 07:14:58 +1000 NNTP-Posting-Host: 61.8.42.109 X-Complaints-To: news@pacific.net.au X-Trace: nasal.pacific.net.au 1126473572 61.8.42.109 (Mon, 12 Sep 2005 07:19:32 EST) NNTP-Posting-Date: Mon, 12 Sep 2005 07:19:32 EST Xref: g2news1.google.com comp.lang.ada:4578 Date: 2005-09-12T07:14:58+10:00 List-Id: Georg Bauhaus writes: > David Trudgett wrote: > >> Slow execution is also somewhat relative. Ada is slower than C, for >> instance, unless you disable run-time checks (an Ada strength), and >> even then Ada may still have extra features/overhead that C doesn't >> have. > > There is some overhead in C programs, too, when they have explicit > checking code to compensate for what C doesn't have. Yes, this is quite true[1], in theory, as well as no doubt in practice (I don't have heaps of experience in the C world, so that's all I can say). On the other hand, with C, you only have to overlook or forget, or have over-towering confidence in one's coding ability, or not know any better, and that's it, you've shot yourself in the foot, so to speak (but you've done it real fast!). Ada feels a lot, LOT safer! :-) I was just writing some Ada code yesterday. It was a case statement and I had forgotten to take care of one possible case. Naturally, the Ada compiler helpfully reminded me. This isn't a run-time check, of course, but still useful. On the subject of about compiler reminders, I'm also very impressed by Gnat's error and warning messages. Talk about helpful! I've never used a compiler with clearer or more useful messages. "You have mispelled 'return'" (or similar) is just one minor example that comes to mind! :-) > This code isn't necessarily visible to the C compiler as checking > code, I 'd say, whereas checks implied by the Ada language are > visible to the compiler in this sense. I'm not sure what the point is here. What does being "visible" to the compiler mean in that sense? Is that more important than the simple fact of being present (because the Ada compiler ensures it is)? David [1] It is also true in the case people accuse Lisp, for example, of being slow. If other languages actually did the things that Lisp does, there wouldn't be any talk about speed differences! -- David Trudgett http://www.zeta.org.au/~wpower/ The operative definition of "crime" is: "Crime that you carried out but we did not." To underscore the fact, Nazi war criminals were absolved if the defense could show that their US counterparts carried out the same crimes. Taylor concludes that "to punish the foe -- especially the vanquished foe -- for conduct in which the enforcer nation has engaged, would be so grossly inequitable as to discredit the laws themselves." That is correct, but the operative definition also discredits the laws themselves, along with all subsequent tribunals. Taylor provides this background as part of his explanation of why US bombing in Vietnam was not a war crime. His argument is plausible, further discrediting the laws themselves. Some of the subsequent judicial inquiries are discredited in perhaps even more extreme ways, such as the Yugoslavia vs. NATO case now being adjudicated by the International Court of Justice. The US was excused, correctly, on the basis of its argument that it is not subject to the jurisdiction of the Court in this case. The reason is that when the US finally signed the Genocide Convention (which is at issue here) after 40 years, it did so with a reservation stating that it is inapplicable to the United States. -- Noam Chomsky