comp.lang.ada
 help / color / mirror / Atom feed
From: EGarrulo <egarrulo@gmail.com>
Subject: Re: Weakness of Ada is expensive / security / etc. ? Anything else?
Date: Sun, 26 Jul 2015 07:51:39 -0700 (PDT)
Date: 2015-07-26T07:51:39-07:00	[thread overview]
Message-ID: <d167aca7-00f6-4285-a931-7daadeccad99@googlegroups.com> (raw)
In-Reply-To: <084c0dc7-ae74-4cb8-b1fe-78f42de94291@googlegroups.com>

I am new to Ada, but so far I have noticed a few things...

*Strenghts*:

- compiles to native executables, hence no need for runtimes;

- no need for runtimes, hence your application will start quickly;

- executables are small (as a comparison, compilers for other languages may produce executables of many megabytes for simple programs);

- fast executables (comparable to C);

- generic code does not carry a runtime penalty (like in Java);

- consistent design of the language;

- everything is explicit, hence the compiler does not perform any clever tricks beyond your back (like in C++).

*Weaknesses*:

> -	Ada complete language is too complex. True or False? If true, how?

Rather than "complex", I would say "rich", because there are lots of features that are meant to tune your application in different ways, but you can safely ignore them while you learn (this is not the case with C++).

> -	Ada requires expensive compilers for large systems 

Even if this were the case -- and it is not, because of the FSF GNAT -- who would develop large systems without enough financial resources?  And when you are developing large systems, you should know that other (missing) qualities of your tools may cost you much more than what you saved by relying on the wrong tool because it was cheap.  On the other hand, expensive compilers are a problem for small shops, but this is not the case anyway for Ada, as said.

> -	Ada lacks that web presence greatly. comp.lang.ada is the only location on the internet with an active Ada community.

Web presence doesn't impress the knowledgeable professional.  What matters is whether you can get answers or not, and the quality of those answers (the so called "signal to noise ratio").

Other weaknesses:

- books are outdated: AFAIK, there is only one (recommended) book that is based on Ada 2012; all other available books are based on Ada 95 (while the basics  may be still relevant, you may wish to learn modern techniques from the start);

- the GNAT GPS is good, but lacks some polishing (and I am using a version that  freezes randomly); I don't know what are the alternatives... maybe I will try Emacs;

- manual memory management (garbage collection is optional, but in practice not available; apparently there are implementations of the "Shared Reference/Weak Reference" pattern, but I have yet to investigate them).

- lack of introspection for generics: you have to "spoon-feed" the compiler to instantiate a generic unit, when the compiler should infer types on its own: this makes the code more verbose than it should.

      parent reply	other threads:[~2015-07-26 14:51 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-17 10:19 Weakness of Ada is expensive / security / etc. ? Anything else? Trish Cayetano
2015-07-17 10:46 ` Simon Clubley
2015-07-17 15:35   ` Trish Cayetano
2015-07-17 15:54     ` David Botton
2015-07-17 12:06 ` G.B.
2015-07-17 15:38   ` Trish Cayetano
2015-07-17 12:54 ` David Botton
2015-07-17 15:41   ` Trish Cayetano
2015-07-17 16:20   ` Patrick Noffke
2015-07-17 17:31 ` Shark8
2015-07-17 17:43   ` Simon Clubley
2015-07-17 18:39 ` Jeffrey R. Carter
2015-07-17 19:28 ` jm.tarrasa
2015-07-17 21:00   ` Pascal Obry
2015-07-17 21:53     ` Shark8
2015-07-17 22:41       ` Nasser M. Abbasi
2015-07-18  7:40         ` Trish Cayetano
2015-07-19 14:55   ` David Botton
2015-07-20  2:40 ` Norman Worth
2015-07-20  9:52   ` Serge Robyns
2015-07-20 17:35     ` Shark8
2015-07-20 19:13       ` David Botton
2015-07-20 22:12       ` NiGHTS
2015-07-21  1:37         ` Norman Worth
2015-07-21  6:54         ` Dmitry A. Kazakov
2015-07-21 13:31           ` NiGHTS
2015-07-21 16:59             ` Dmitry A. Kazakov
2015-07-21 17:50               ` NiGHTS
2015-07-21 19:44                 ` Dmitry A. Kazakov
2015-07-21 20:28                   ` Björn Lundin
2015-07-21 22:01                   ` Georg Bauhaus
2015-07-21 23:44                     ` Shark8
2015-07-22  6:19                       ` Dmitry A. Kazakov
2015-07-22  6:13                     ` Dmitry A. Kazakov
2015-07-22  7:04                       ` Georg Bauhaus
2015-07-22  7:37                         ` Dmitry A. Kazakov
2015-07-22  9:29                           ` Graham Stark
2015-07-22 10:33                             ` Dmitry A. Kazakov
2015-07-22 10:12                           ` G.B.
2015-07-22 10:31                             ` Dmitry A. Kazakov
2015-07-22 11:20                               ` G.B.
2015-07-22  0:17                   ` NiGHTS
2015-07-22  6:54                     ` Dmitry A. Kazakov
2015-07-22 15:11                       ` Shark8
2015-07-22 11:43                     ` Brian Drummond
2015-07-24  7:34         ` Egil H H
2015-07-21 11:17       ` Serge Robyns
2015-07-20 17:38 ` Florian Weimer
2015-07-20 17:45   ` Paul Rubin
2015-07-20 17:53     ` Florian Weimer
2015-07-20 18:09       ` Paul Rubin
2015-07-20 18:25         ` Florian Weimer
2015-07-20 18:34           ` Paul Rubin
2015-07-20 19:33             ` Florian Weimer
2015-07-20 20:20               ` Paul Rubin
2015-07-22 18:29                 ` Florian Weimer
2015-07-22 19:58                   ` Paul Rubin
2015-07-26 19:41                     ` Florian Weimer
2015-07-27  1:18                       ` Jeremiah
2015-07-22  6:34               ` Stefan.Lucks
2015-07-26 14:51 ` EGarrulo [this message]
replies disabled

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