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,703c4f68db81387d X-Google-Thread: 109fba,703c4f68db81387d X-Google-Thread: 115aec,703c4f68db81387d X-Google-Thread: f43e6,703c4f68db81387d X-Google-Attributes: gid103376,gid109fba,gid115aec,gidf43e6,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!proxad.net!newsfeed.stueberl.de!newsr1.ipcore.viaginterkom.de!news-peer1!btnet-feed5!btnet!news.btopenworld.com!not-for-mail From: Martin Dowie Newsgroups: comp.lang.ada,comp.lang.c++,comp.realtime,comp.software-eng Subject: Re: [OT] Re: Teaching new tricks to an old dog (C++ -->Ada) Date: Sun, 6 Mar 2005 01:01:58 +0000 (UTC) Organization: BT Openworld Message-ID: References: <4229bad9$0$1019$afc38c87@news.optusnet.com.au> <1110032222.447846.167060@g14g2000cwa.googlegroups.com> <871xau9nlh.fsf@insalien.org> <3SjWd.103128$Vf.3969241@news000.worldonline.dk> <87r7iu85lf.fsf@insalien.org> <1110052142.832650@athnrd02> NNTP-Posting-Host: host81-154-188-69.range81-154.btcentralplus.com Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: titan.btinternet.com 1110070918 7425 81.154.188.69 (6 Mar 2005 01:01:58 GMT) X-Complaints-To: news-complaints@lists.btinternet.com NNTP-Posting-Date: Sun, 6 Mar 2005 01:01:58 +0000 (UTC) In-Reply-To: <1110052142.832650@athnrd02> X-Accept-Language: en-us, en User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) Xref: g2news1.google.com comp.lang.ada:8702 comp.lang.c++:44258 comp.realtime:985 comp.software-eng:4516 Date: 2005-03-06T01:01:58+00:00 List-Id: Ioannis Vranos wrote: > Ludovic Brenta wrote: > >> Generally speaking, the very fact that you feel an urge to distinguish >> between "C++" and "modern C++" is an indication that C++ is a poor >> language containing many unsafe features, some of which you obligingly >> enumerated above. By contrast, there is no distinction between "Ada" >> and "modern Ada". Ada is safe by design, from the ground up. > > > > With Ada aside (I find no reason why one should not learn it), C++ is a > powerful and systems programming language, and power implies painful low > level details. However it also provides all major high level facilities, > and if you stick in high level programming it is very safe, while it > maintains the maximum space and run-time efficiency principle. It does NOT provide multi-tasking... or fixed-point numbers... > In general, we cannot compare the two languages because they have > different design ideals. We we _can_ compare them... but you are correct that we must take their design considerations into account. Ada95 was design specifically to support efficient, real-time safe environments (the OP of the original thread question), C++ was designed to produce an object-orientated extension to C. > C++ supports 4 paradigms. Each paradigm is supported well with maximum > run-time/space *efficiency*. At the same time it leaves no room for a > lower level language except of assembly. Ada83 suffered from some pretty poor implementations, but Ada95 has never had the same problems. My own experience is that Ada95 compilers produce as efficient code as any other language with the exception of assembler. Not scientific I know but... > On the other hand I do not know ADAs ideals (for example I do not think > it supports the generic programming paradigm - templates), but I suspect > they are to be an easy (restricted to easy parts), safe (not letting you > do low level operations), application development language, which is OK > for usual application development. Oh dear! That's a shocker!!!! Ada had generics back in Ada83 - and _all_ Ada83 compiler supported it then! The debugger support back then was pretty shabby, but hey, at least the compilers all supported it and in a completely uniform fashion. Cheers -- Martin