From: Ludovic Brenta on
Duke Normandin writes:
> On 2010-05-20, Anonymous <cripto(a)ecn.org> wrote:
>>> Just curious to know if Ada is still widely used, and in what
>>> area(s) does it excel, e.g. data processing, number crunching,
>>> graphics, etc? TIA..
>>
>> Ada was never widely used. It could have been, because it's one of
>> the all time great general purpose languages. There's probably no
>> better or more flexible HLL. However, various factors combined to
>> make it a niche language and it doesn't have any hope of breaking out
>> of that niche or getting the use and exposure it deserves.
>
> Well! Doesn't _that_ just suck! Tell me more about these "various
> factors" - off this NG if you prefer. I need to make an informed
> decision as to whether or not I should continue learning Ada.

My experience shows that:

- people who learn Ada become more adept at other languages. This is
because Ada teaches them to think properly. This in turn is because,
in Ada, concepts are much more orthogonal than in other languages
(e.g. encapsulation is orthogonal to types).

- people who spend the effort to learn Ada show they are real software
engineers. A real software enginer bases their decisions on technical
merits, not popularity.

- Sloppy programmers avoid Ada, therefore Ada helps avoid sloppy
programmers.

--
Ludovic Brenta.
From: Dmitry A. Kazakov on
On Thu, 20 May 2010 19:51:19 GMT, Duke Normandin wrote:

> On 2010-05-20, Gautier write-only <gautier_niouzes(a)hotmail.com> wrote:
>> On May 20, 2:53�pm, Duke Normandin wrote:
>>
>>> Just curious to know if Ada is still widely used,
>>
>> AFAIK it has never been widely used (so you can forget the "still").
>> As a language designed from scratch, it came too late to challenge
>> established languages (among them, C). The first version was perhaps
>> too rich to be competitive in the nascent microcomputing world - so it
>> that sense, it was too early. But wait, we are still in 2010. Perhaps
>> people in 2050 will ask themselves why the heck these fragile
>> "#include", '}' and pointers-everywhere-paradigm were still in use in
>> 2010...
>>
>>> and in what area(s) does it excel, e.g. data processing, number crunching, graphics, etc?
>>
>> It is excellent in these areas, and probably in many others...
>
> So it would be fair to say that Ada is truly a "general-purpose" language?

Ada was designed as an universal-purpose language to supersede other
languages (this was one of the language design goals).

Most important Ada features to me:

- An elaborated type system
- Consistently implemented OO (*)
- High level concurrency support (**)
- Portable programming support (***)
- Efficient code generation
- Defined semantics of the language constructs
- Static analysis support
- Standardized
------------------------------------------
* broken in most OOPL
** low level in other concurrent languages
*** in Ada you tell what you want from the compiler. I.e. your design is
driven by the requirements. In other languages you have to use what the
compiler offers to you, e.g.
type Sensor range 1..100: (Ada)
int Sensor; (C)

--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
From: Yannick Duchêne (Hibou57) on
Le Thu, 20 May 2010 21:06:26 +0200, Duke Normandin <dukeofperl(a)ml1.net> a
écrit:
> That is indeed sad, given that Ada is such a mature language. These
> types of
> resources should have been freely available at Ada's home a long time
> ago.
> However, I suspect that the commercialization of Ada has, in the past,
> been
> responsible for impeding its proliferation. Same trauma suffered by many
> other great languages, some of whom are bordering on extinction. There
> still
> may be time for Ada?
On the other hand, people are responsible for assuming or not assuming the
value of things. If some people (in fact, most of) don't want to assume
the price of better, that is, may be not always free of charge, more time
to spend to do and learn, or think before instead of after, then, who is
responsible ?

Unfortunately, the best in software, values less than a peanut to most
people (not a picture, a fact).

What I mean, is : not sure Ada's community is the sole responsible for
what you are pointing. Many people are also.

And never mind, Ada (or its successor 100 years later) will always be
there for people who know its value ;)

--
There is even better than a pragma Assert: a SPARK --# check.
From: Yannick Duchêne (Hibou57) on
Le Thu, 20 May 2010 20:58:01 +0200, Duke Normandin <dukeofperl(a)ml1.net> a
écrit:
> That URL is not much good - all the links are dead!
>
> Perhaps Ada should have a _real_ home, where it is guaranteed that noob
> students, and noob old farts like me will indeed find the resources
> needed
> to make Ada shine! ;)
Sorry, this was in my bookmarks (some are old, indeed)

--
There is even better than a pragma Assert: a SPARK --# check.
From: Yannick Duchêne (Hibou57) on
Le Thu, 20 May 2010 21:51:19 +0200, Duke Normandin <dukeofperl(a)ml1.net> a
écrit:
> So it would be fair to say that Ada is truly a "general-purpose"
> language?
Depends on what means “general-purpose”. What would be a
“general-application” ? Not so much relevant.

I would say it is good for core implementations, where no higher level
paradigms was shown to be better suited ; that is, most of system-level
and most of core application-level. For higher levels, there is a galaxy
specific-domain-languages which may be better.

The frontier may also be the one of safety or efficiency. Draw a line
below which efficiency and safety values more (and is most likely to be an
issue) than plasticity, then below this line, would suggest Ada, and above
this line, may suggest something else.

--
There is even better than a pragma Assert: a SPARK --# check.