comp.lang.ada
 help / color / mirror / Atom feed
From: Robert A Duff <bobduff@shell01.TheWorld.com>
Subject: Re: Software Quality in Science
Date: Wed, 10 Feb 2010 11:37:59 -0500
Date: 2010-02-10T11:37:59-05:00	[thread overview]
Message-ID: <wccy6j1hwrc.fsf@shell01.TheWorld.com> (raw)
In-Reply-To: uocjx17ny.fsf@stephe-leake.org

Stephen Leake <stephen_leake@stephe-leake.org> writes:

> Georg Bauhaus <rm.tsoh.plus-bug.bauhaus@maps.futureapps.de> writes:
>> His arguments still seem based on studies from the mid 1990s.
>> A study is something at least. Is there anything in the Tokeneer
>> data that could serve as a basis for a comparison?
>> What failure modes might Spark add?

I don't know if you'd call this a "failure mode", but SPARK
has heavy restrictions.  For example, recursion is not allowed.
If I'm writing a compiler, I _will_ be using recursion, because
languages have recursive features (expressions contain
subexpressions, etc).  If the language doesn't support
recursion directly, I will have to implement it myself, using
an explicit stack.  That's error prone, compared to using
recursion in Ada.  So I wouldn't want to write a compiler
in SPARK.

On the other hand, if you don't need recursion and various
other features, then SPARK is an excellent choice.

> Brain pain, for one. Understanding how to use Ada well is an order of
> magnitude harder than understanding how to use C; I suspect SPARK is
> another large increase (I've only looked into it lightly, never tried
> to seriously use it).
>
> I suspect this is one reason Ada has failed to take over the
> programming space; you have to be a really good programmer to fully
> benefit from it, and it's just not worth it for a mediocre programmer.

I'm not sure that's true.  McCormick's paper about toy trains
says otherwise (students were able to produce working code
in Ada, but not in C, even with extra help in the C case).

It's true that Ada is a big language, but a lot of it
can be safely ignored.  There's no need for an Ada
programmer to understand the overload resolution rules,
for example.

- Bob



  parent reply	other threads:[~2010-02-10 16:37 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-09 21:20 Software Quality in Science Jerry
2010-02-09 21:51 ` Jerry
2010-02-09 22:00   ` Hibou57 (Yannick Duchêne)
2010-02-10  4:13     ` Thomas Wicklund
2010-02-10  5:24       ` Hibou57 (Yannick Duchêne)
2010-02-09 23:43   ` Robert A Duff
2010-02-10  1:01     ` Georg Bauhaus
2010-02-10 14:34       ` Stephen Leake
2010-02-10 15:09         ` Martin
2010-02-10 16:37         ` Robert A Duff [this message]
2010-02-10 17:05           ` Martin
2010-02-10 13:13     ` Florian Weimer
2010-02-10 13:30       ` (see below)
2010-02-10 13:38       ` Martin
2010-02-15 11:20       ` Colin Paul Gloster
2010-02-15 14:52         ` Maciej Sobczak
2010-02-15 18:48           ` Colin Paul Gloster
2010-02-10 14:29     ` Stephen Leake
2010-02-10 14:38       ` Hyman Rosen
2010-02-10 16:24         ` Robert A Duff
2010-02-15 11:32       ` Colin Paul Gloster
2010-02-15 12:19         ` Georg Bauhaus
2010-02-10 13:55   ` Ludovic Brenta
2010-02-10 14:21     ` Hibou57 (Yannick Duchêne)
2010-02-10 22:52     ` Bob Spooner
2010-02-11  8:29       ` Rick
2010-02-11 22:39   ` Hibou57 (Yannick Duchêne)
2010-02-11 23:10     ` Brian Drummond
2010-02-11 23:21       ` Hibou57 (Yannick Duchêne)
2010-02-11 23:24         ` Hibou57 (Yannick Duchêne)
2010-02-12  0:06         ` Robert A Duff
2010-02-12  0:32           ` Hibou57 (Yannick Duchêne)
2010-02-12  7:37           ` Pascal Obry
2010-02-12 10:58           ` Stephen Leake
2010-02-12 15:02             ` Robert A Duff
2010-02-15 10:49           ` Alex R. Mosteo
2010-02-12  7:37         ` Pascal Obry
2010-02-15 12:18       ` Colin Paul Gloster
2010-02-15 11:08   ` Colin Paul Gloster
2010-02-15 14:43     ` Hibou57 (Yannick Duchêne)
2010-02-15 19:01       ` Colin Paul Gloster
replies disabled

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