comp.lang.ada
 help / color / mirror / Atom feed
From: Ted Dennison <dennison@telepath.com>
Subject: Re: Help me to chose between ADA 95 and C++
Date: 1999/12/15
Date: 1999-12-15T00:00:00+00:00	[thread overview]
Message-ID: <838p1u$efd$1@nnrp1.deja.com> (raw)
In-Reply-To: 38566835.B4A2D48@rdel.co.uk

In article <38566835.B4A2D48@rdel.co.uk>,
  Chris Powell <chris.powell@rrds.co.uk> wrote:

> Equal care is required in Ada, but possibly for different reasons. If
> types are defined incorrectly the resultant code ends up worse than if
> no types were used. Although explicit type conversions are required
> which should alert the programmer to a potential violation of the
> intended design, often there end up being so many conversions
> everywhere that the programmer no longer gives them a second thought.

There are two possible things you could be talking about here:
  Explicit type conversions between numeric types with constrained
ranges.
  Unchecked_Conversion conversions.

If you are talking about the latter, you are describing heinously bad
code. You should almost *never* see an unchecked conversion outside of
an OS or external language interface, or perhaps a stream
implementation.

If you are talking about the former, you're right. Generally we try to
avoid excessively constrained numeric types, as doing conversions to and
from them just to handle temporary range excedences in intermediate
calculations is a real pain. I think the only constrained numeric types
we use are angle types (which are in their own package with mathematical
and conversion operations for them).

> At least C++ has something in the way of a useful library that is part
> of the ANSI standard for the language. I always use STL containers now

Unfortunately that standard isn't nearly as well adhered to as Ada's.
Check out the STL threads in comp.os.vxworks for an example. I have only
seen one thread here *ever* about an incorrect implementation of annex
A.

> As for compiler publishers, the support we receive for our Ada
> environment is expensive and unhelpful. The Ada language requires a
> more complex compiler which has led to far more compiler bugs than
> C++, and we find more of them because the developer base for Ada is so
> much smaller than that of C++. And the compiler is so slow! Wow I've

That's really wierd, because I'd say just the opposite (well, perhaps
not the "expensive" part). But most sources will tell you that the C++
standard is *more* complicated. I'd say the amount of compiler bugs, if
indeed they are more (I don't know that for a fact) are probably due to
you using a much less exercised compiler for Ada than you do for C++.

My experience with Ada vendors (Aonix, Rational, GreenHills, OC, ACT
"unsupported") has shown them all very responsive. Certainly moreso than
I could expect from Microsoft.

--
T.E.D.


Sent via Deja.com http://www.deja.com/
Before you buy.




  parent reply	other threads:[~1999-12-15  0:00 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-11-26  0:00 Help me to chose between ADA 95 and C++ Robert
1999-11-26  0:00 ` Harald Schmidt
1999-11-26  0:00   ` Andreas Winckler
1999-11-26  0:00     ` Florian Weimer
1999-12-04  0:00   ` Richard D Riehle
     [not found]     ` <01bf3e32$0b9dc880$022a6282@dieppe>
1999-12-10  0:00       ` Chris Powell
1999-12-13  0:00         ` Marin D. Condic
1999-12-13  0:00         ` Richard D Riehle
1999-12-14  0:00           ` Chris Powell
1999-12-14  0:00             ` Richard D Riehle
1999-12-14  0:00               ` Matthew Heaney
1999-12-14  0:00             ` Ray Blaak
1999-12-14  0:00             ` Larry Kilgallen
1999-12-15  0:00               ` Robert A Duff
2000-01-12  0:00                 ` Richard Pinkall-Pollei
1999-12-14  0:00             ` Simon Wright
1999-12-15  0:00               ` Chris Powell
1999-12-15  0:00                 ` Robert A Duff
1999-12-15  0:00             ` Ted Dennison [this message]
1999-12-20  0:00               ` Stefan Skoglund
1999-12-16  0:00             ` Pascal Obry
1999-12-16  0:00               ` Aidan Skinner
1999-12-16  0:00               ` Lutz Donnerhacke
1999-12-16  0:00               ` Rakesh Malhotra
1999-12-21  0:00                 ` Geoff Bull
1999-12-21  0:00             ` Robert Dewar
1999-12-21  0:00               ` Ted Dennison
1999-12-21  0:00                 ` Robert Dewar
1999-12-21  0:00               ` Chris Powell
1999-12-13  0:00         ` Brian Rogoff
1999-12-14  0:00           ` Chris Powell
1999-12-14  0:00             ` Preben Randhol
1999-12-14  0:00               ` Stephen Leake
1999-12-14  0:00                 ` Tucker Taft
1999-12-15  0:00                   ` Stephen Leake
1999-12-15  0:00                 ` Preben Randhol
1999-12-14  0:00             ` Brian Rogoff
1999-12-15  0:00           ` Richard Pinkall-Pollei
1999-12-15  0:00             ` Richard Pinkall-Pollei
1999-12-21  0:00             ` Geoff Bull
1999-12-21  0:00               ` Tucker Taft
1999-12-22  0:00                 ` Ted Dennison
1999-12-13  0:00         ` DuckE
1999-12-14  0:00           ` Matthew Heaney
1999-12-14  0:00         ` Matthew Heaney
1999-12-14  0:00           ` Chris Powell
1999-12-14  0:00             ` Stephen Leake
1999-12-23  0:00               ` Chris Powell
1999-12-14  0:00             ` Matthew Heaney
1999-12-15  0:00               ` Hyman Rosen
1999-12-14  0:00             ` Tucker Taft
1999-12-14  0:00               ` Matthew Heaney
1999-12-23  0:00               ` Chris Powell
1999-12-27  0:00                 ` Robert A Duff
1999-11-26  0:00 ` Andreas Winckler
1999-11-26  0:00 ` Preben Randhol
1999-11-26  0:00   ` Preben Randhol
1999-11-27  0:00 ` Lionel Draghi
  -- strict thread matches above, loose matches on Subject: below --
1999-12-14  0:00 Robert C. Leif, Ph.D.
1999-12-15  0:00 ` Richard D Riehle
1999-12-15  0:00 Robert C. Leif, Ph.D.
1999-12-16  0:00 ` Richard D Riehle
1999-12-16  0:00   ` Matthew Heaney
1999-12-17  0:00     ` Richard D Riehle
1999-12-18  0:00       ` Matthew Heaney
1999-12-20  0:00         ` Richard D Riehle
1999-12-22  0:00 Help me to chose between ADA 95 and C++ ( Ehud Lamm
replies disabled

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