From: Niklas Holsti on
Grant Edwards wrote:
> On 2009-09-03, Niklas Holsti <niklas.holsti(a)tidorum.invalid> wrote:

>> So why isn't Ada used more?
>
> The only data point I have first hand is from the late 80's.
> The first and only time I used Ada the toolset and development
> environment was amazingly horrible. It was on a VAX/VMS
> system. Rather than a stand-alone toolchain that could be used
> alongside normal VMS stuff (text editors, file utilities, build
> systems, configuration management) like all the other compilers
> (Pascal, C, FORTRAN, etc.), the Ada compiler lived it its own
> completely isolated (and very crippled) "world". It had its
> own command-line interface, its own useless editor, build
> management system, source control system, and
> _even_its_own_file_system_. You could import/export files to
> the normal VMS filesystem system but it wasn't easy.
>
> It was absolutely awful.

Yes, some/most of the early Ada implementations were horrible, as many
people have attested.

Thankfully, and as I'm sure Grant knows, the current implementations are
much better. The GNU Ada compiler gnat is a bona-fide gcc citizen, using
ordinary source and object files, your choice of editor or IDE, and it
can link from and to C/C++ code.

--
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
. @ .
From: Niklas Holsti on
Bill Davy wrote:
> "Niklas Holsti" <niklas.holsti(a)tidorum.invalid> wrote in message
>>
>> Stephen Zeigler compared the effectiveness of C and Ada programming at
>> Rational, a compiler and SW tool business (now part of IBM), as Rational
>> was gradually switching from C to Ada. See
>> http://archive.adaic.com/docs/present/ajpo/pll-cost/html/tsld058.htm. Some
>> quotes: "Ada cost almost half of what the C code cost, and contained
>> significantly fewer defects per 1000 SLOC by 7x the C code (700%). Even on
>> the new C++ code, Ada still has 440% fewer defects."

> I wonder what "Ada still has 440% fewer defects" means. Or perhaps this is
> a defect?

To be sure it is a defect in the English quotation. But it a usage of
per cent that seems to be rather common.

> But if "7 times fewer" is called "700% fewer," then 440% means 4.4 times
> fewer. So it has 77% fewer errors. Does not sound so good.

I would say that reducing errors by three quarters is "good".
Furthermore, according to Ziegler's report the errors in the Ada code
were significantly faster and cheaper to correct than the errors in the
C/C++ code.

> Programmers and those who would wield statistics should aim for clarity.

Indeed.

--
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
. @ .
From: Grant Edwards on
On 2009-09-04, Niklas Holsti <niklas.holsti(a)tidorum.invalid> wrote:
> Grant Edwards wrote:
>> On 2009-09-03, Niklas Holsti <niklas.holsti(a)tidorum.invalid> wrote:
>
>>> So why isn't Ada used more?
>>
>> The only data point I have first hand is from the late 80's.
>> The first and only time I used Ada the toolset and development
>> environment was amazingly horrible. It was on a VAX/VMS
>> system. Rather than a stand-alone toolchain that could be used
>> alongside normal VMS stuff (text editors, file utilities, build
>> systems, configuration management) like all the other compilers
>> (Pascal, C, FORTRAN, etc.), the Ada compiler lived it its own
>> completely isolated (and very crippled) "world". It had its
>> own command-line interface, its own useless editor, build
>> management system, source control system, and
>> _even_its_own_file_system_. You could import/export files to
>> the normal VMS filesystem system but it wasn't easy.
>>
>> It was absolutely awful.
>
> Yes, some/most of the early Ada implementations were horrible,
> as many people have attested.

And once you've chased people to a different language, they
tend to stay there.

> Thankfully, and as I'm sure Grant knows, the current
> implementations are much better.

I haven't used any Ada implementations since, but I was pretty
sure it was true. Unfortunately, by the time reasonable (in
both price and usability) Ada implementations came out, C had
already taken over the embedded space from Pascal -- which was
very popular back in the Z80 and CP/M days. I remember when
Tektronix sold some _very_ nice embedded development tools (HW
and SW) centered around Pascal compilers. The labs we did in
my undergrad days using high-level language on 8-bit machines
used Pascal and HP in-circuit-emulators.

> The GNU Ada compiler gnat is a bona-fide gcc citizen, using
> ordinary source and object files, your choice of editor or
> IDE, and it can link from and to C/C++ code.

Someday I'd really like to try an embedded project in Gnu Ada,
(or maybe Modula-3 or Oberon) but I doubt I'm ever going to be
able to convince an employer to pay for the effort. I can
already hear it...

"Where are we going to hire people with Ada experience?"

--
Grant Edwards grante Yow! Someone in DAYTON,
at Ohio is selling USED
visi.com CARPETS to a SERBO-CROATIAN
From: Niklas Holsti on
Grant Edwards wrote:

> Someday I'd really like to try an embedded project in Gnu Ada,
> (or maybe Modula-3 or Oberon) but I doubt I'm ever going to be
> able to convince an employer to pay for the effort. I can
> already hear it...
>
> "Where are we going to hire people with Ada experience?"

Hire good programmers and train them in Ada using some of the time and
money you will save by reducing error density by 75% :-)

There is some evidence that learning Ada improves programming skills in
general, even if the student then uses other languages. I remember an
anecdote told by a US professor of CS who found that those of his
graduated students who had studied with Ada as their main language were
later promoted quicker in their industrial C/C++ jobs than those who had
studied using C/C++ (sorry, I don't have a reference). I know this
sounds a bit like "BASIC damages your brain", and for all I know it may
be explained simply by the Ada students learning one *more* language
than the C/C++ students did -- every language increases your skills --
or by differences in the teachers. This was not a double-blind experiment.

--
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
. @ .
From: Vladimir Vassilevsky on


D Yuniskis wrote:
> Hi Vladimir,
>
>> A crashed application can very well screw up everything. However, if
>> this happens, we fall into the bootloader, so we can recover.
>
>
> But there is nothing that *detects* that something has gone awry?
> I.e., you rely on the errant application to clobber "something"
> that *eventually* causes the system to crash? (perhaps a watchdog
> brings you back to sanity?)

There is watchdog, heaps/stacks are monitored, there is the CPU
exception mechanism which can detect some of the problems; however there
is no hardware memory protection due to the lack of the MMU in BlackFin.
So, a runaway pointer can cause a lot of trouble. That kind of problem
is extremely difficult to troubleshoot in the multitask system.


Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com
First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7 8 9 10 11
Prev: AVR BASIC COMPILER source code released
Next: ATtiny10