comp.lang.ada
 help / color / mirror / Atom feed
From: n_brunot@my-deja.com
Subject: Re: WinNT ADA compilers comparison
Date: 2000/08/03
Date: 2000-08-03T00:00:00+00:00	[thread overview]
Message-ID: <8mak9p$rbm$1@nnrp1.deja.com> (raw)
In-Reply-To: 8m9a08$pu7$1@nnrp1.deja.com

In article <8m9a08$pu7$1@nnrp1.deja.com>,
  gdemont@my-deja.com wrote:

> Did you avoid inlining (-gnatn or -gnatN) too ?
> A solution would be to share more instanciations of generics
> e.g. having common subtypes. Create 1-line packages for those
> generic ones used many times:
> "with such_generic; package such_inst is new such_generic(x,y,z);"
> If there are many main procedures p1, p2,...
> (-> several linked executables p1.exe, p2.exe)
> using almost the same packages, shell them through a common one
> "with p1,p2,...; procedure p is..."

We try not introducing any changes in our specifications and tools just
to satisfy one compiler if all others are happy with a perfectly
satisfying code (especially a compiler we don't use for release version)
We prefer to wait that the compiler works fine with code ok for all
others compilers.
We always check our code with several compilers in order to keep our
code as much independant as possible from the compiler, even for one
single platform.
Some compilers don't have the same behavior, and a perfectly bad code
can work very well on a very good compiler.
It's a very good way to chase bad or non portable code with this
method, and it's doesn't make you lose a lot of time (and you win a lot)

gnat 3.12p is one we use to check our code, but anyway it is unusable
for our applications due to its very poor reliability when components
of foreign code are called under WinNT, (see discussion for
float_io.put on gnat chat july archives www.gnat.com)
Gnat works in a very different way than others compilers which makes it
a good check tool even if we don't use it for release versions.
Of course a (very expensive) supported version exists, and bugs could
be quickly solved, but we think it's not a good thing that support is
needed for basic reliability problems .

Compiler vendor often forget than even if their support answers and
provides a patch in less than 1 hour, the time to detect the problem
(especially hardly noticeable ill behavior without warning or crash,
and especially if it's detected after official release), isolate it,
contact support, get the patch, make a new version of your application,
providing it to your customers, is of incredibly high cost.

It's much better to have a not so good support you need once every two
years, than an excellent support you need every 3 monthes.

>
> And what makes you unhappy with the Ada95 compilers other than GNAT ?
>
> G.

Currently we have more than 1 million ADA lines code compiled with an
ADA 83 compiler. We never need any support in 5 or 6 years.
We test several compilers to switch to ADA95 (our code is designed so
we have very few specific units requiring different code for ADA83 and
ADA95) and we are not in a hurry.
Nothing makes us unhappy with others ADA95 compilers
We just take the time to check internally our softs compiled with
others compilers, and compare the easy of use, time required to
compile, link etc ...



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




  reply	other threads:[~2000-08-03  0:00 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-07-20  0:00 WinNT ADA compilers comparison Nicolas Brunot
2000-07-20  0:00 ` tmoran
2000-07-20  0:00 ` Stephen Leake
2000-07-20  0:00   ` Pascal Obry
2000-07-20  0:00 ` Thierry Lelegard
2000-07-20  0:00   ` Lionel Draghi
2000-07-21  0:00     ` Nicolas Brunot
2000-07-22  0:00       ` Thierry Lelegard
2000-07-24  0:00         ` Nicolas Brunot
2000-07-25  0:00           ` G. de Montmollin
2000-08-02  0:00             ` n_brunot
2000-07-26  0:00           ` Laurent Guerby
2000-08-02  0:00             ` n_brunot
2000-08-02  0:00               ` gdemont
2000-08-03  0:00                 ` n_brunot [this message]
2000-08-03  0:00                   ` Brian Rogoff
2000-08-03  0:00                     ` tmoran
2000-08-04  0:00                     ` Robert A Duff
2000-08-15  4:56               ` Robert I. Eachus
2000-08-16  0:00                 ` n_brunot
replies disabled

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