comp.lang.ada
 help / color / mirror / Atom feed
From: quiet_lad <gavcomedy@gmail.com>
Subject: Re: Practicalities of Ada for app development
Date: Wed, 13 Jun 2012 03:20:55 -0700 (PDT)
Date: 2012-06-13T03:20:55-07:00	[thread overview]
Message-ID: <4dc8878f-22d7-44fb-866e-48b70d770eb3@h10g2000pbi.googlegroups.com> (raw)
In-Reply-To: jqtr7u$3r9$1@adenine.netfront.net

On Jun 8, 2:35 pm, Jeffrey Carter <spam.jrcarter....@spam.not.acm.org>
wrote:
> On 06/08/2012 01:48 PM, wrp wrote:
>
>
>
> > 1. To begin with, I've heard it said that Ada, designed for embedded
> > system building, is simply not suited to apps for a general computing
> > platform. That's rather vague and I haven't seen any detailed
> > justification of that claim. What would you say?
>
> I would say everything you've heard is wrong. Ada is a general-purpose language
> that has been used successfully in every application domain. Ada is the language
> of choice for S/W that must be correct. Since I want all my S/W to be correct, I
> always use Ada. Examples of small Ada applications I've written include one to
> choose the signature (like the one at the end of this message), one to choose
> the sound to be played next time I log in (next time it will say, "What is your
> favorite color?"), and one to display a quote in a dialog window (today's is,
> "If you think you got a nasty taunting this time, you ain't heard nothing
> yet!"). There seems to be a theme there.
>
> A larger application is the Mine Detector game
> (http://pragmada.x10hosting.com/mindet.html).
>
> At work we have a large, concurrent, distributed, soft-real-time, web-accessible
> call-center application, but large parts of it do DB access and things that
> would be common in the kind of applications you want to make.
>
> > 2. I don't need tools to be free, but they have to be affordable to a
> > small shop. If I'm targeting x86-64 (and possibly ARM) is GNAT the
> > only compiler option I have?
>
> RR Software's Janus/Ada (for Windows) is reasonably priced. You might also look
> at Atego.
>
> Note that most compiler are for Ada 95. Only 3 of 7 compilers I'm aware of
> support the entire language in the current standard (published in 2007). GNAT is
> the only compiler I'm aware of that supports features from the next standard
> (hopefully published this year).
>
> Ada 95 is a very good language, so that might not be a concern. (Even Ada 83 is
> a better language than most of the competition.)
>
> > 3. How about the quality and availablity of supporting tools like
> > debuggers and profilers?
>
> One nice thing about Ada is not needing to use a debugger.
>
> > 4. How about production quality, open source libraries for things like
> > Unicode support, sockets, network communication, GUIs, etc? The stuff
> > atwww.dmitry-kazakov.delooks good, but most of what I have seen
> > online is from the 1980s and pretty rough to begin with.
>
> There are plenty of libraries available. You can find many through adaic.org.
>
> > 5. How well is incremental development supported? I'm thinking of
> > things like modular compiling and speed of the edit-compile-test
> > cycle.
>
> Unlike C, Ada has modules ("packages"). With them, stubs, and separate
> compilation, incremental development is supported well.
>
> > 6. Size and latency are sometimes an issue. I've heard that since GNAT
> > is oriented to building larger systems, the executables it produces
> > are comparatively bulky. What is the situation relative to C in that
> > regard?
>
> As I've said, everything you've heard is wrong. Equivalent programs in Ada and C
> create executables of about the same size using gcc (the key word is
> "equivalent"). Robert Dewar of AdaCore claims to have a collection of equivalent
> Ada and C programs that produce identical object code using gcc.
>
> > 7. What advanced tutorial material is there for using Ada in this way?
> > Say that I have Norman Cohen's _Ada as a Second Language_. What more
> > advanced material is available on subjects other than concurrency,
> > distributed processing, or real-time systems? On a related note, what
> > projects would you recommend looking at as examples of great code?
>
> Cohen is a pretty good book; I'm not sure that you need anything else. Note that
> even small applications can sometimes benefit from concurrency. Since Ada
> tasking is high-level and safe, it would a mistake not to learn about it so you
> can use it when warranted. Barne's book is a good choice. You might want to look
> at "Ada Distilled" by Richard Riehle. Again, adaic.org has a list of texts and
> tutorials.
>
> --
> Jeff Carter
> "When Roman engineers built a bridge, they had to stand under it
> while the first legion marched across. If programmers today
> worked under similar ground rules, they might well find
> themselves getting much more interested in Ada!"
> Robert Dewar
> 62
>
> --- Posted via news://freenews.netfront.net/ - Complaints to n...@netfront.net ---

roman quote best this year!!!
wow is ada really even awesome for web?
watch out ruby!!
as unix admin I love idea of safety and correctness...



  parent reply	other threads:[~2012-06-14 16:53 UTC|newest]

Thread overview: 112+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-08 20:48 Practicalities of Ada for app development wrp
2012-06-08 21:35 ` Jeffrey Carter
2012-06-09  0:40   ` Adam Beneschan
2012-06-09  6:38     ` Jeffrey Carter
2012-06-21 17:14       ` Randy Brukardt
2012-06-21 18:16         ` Adam Beneschan
2012-06-21 19:18           ` J-P. Rosen
2012-06-21 20:30             ` Adam Beneschan
2012-06-21 21:09               ` Randy Brukardt
2012-06-22  4:59                 ` Simon Wright
2012-06-22  5:32                   ` Tero Koskinen
2012-06-22 19:51                     ` Randy Brukardt
2012-06-21 21:15               ` J-P. Rosen
2012-06-22 10:43               ` Tero Koskinen
2012-06-21 21:00           ` Randy Brukardt
2012-06-21 21:18             ` J-P. Rosen
2012-06-22 19:55               ` Randy Brukardt
2012-06-23  6:43                 ` J-P. Rosen
2012-06-09  4:30   ` BrianG
2012-06-09  7:11   ` Georg Bauhaus
2012-06-13 10:20   ` quiet_lad [this message]
2012-06-09  6:55 ` gautier_niouzes
2012-06-09  7:04 ` Georg Bauhaus
2012-06-09  9:25 ` Nomen Nescio
2012-06-09  9:36   ` Dmitry A. Kazakov
2012-06-10  3:46     ` Yannick Duchêne (Hibou57)
2012-06-12 20:10     ` i3text
2012-06-13  7:55       ` Dmitry A. Kazakov
2012-06-21 17:21         ` Randy Brukardt
2012-06-13 10:28     ` quiet_lad
2012-06-13 13:07       ` Dmitry A. Kazakov
2012-06-09 16:09   ` tmoran
2012-06-13 10:29     ` quiet_lad
2012-06-09 23:18   ` darkestkhan
2012-06-10  3:56     ` Yannick Duchêne (Hibou57)
2012-06-10 14:04     ` Dmitry A. Kazakov
2012-06-10 16:51       ` Yannick Duchêne (Hibou57)
2012-06-10 17:00         ` Dmitry A. Kazakov
2012-06-10 17:18           ` Yannick Duchêne (Hibou57)
2012-06-10 19:33             ` Dmitry A. Kazakov
2012-06-10 21:36               ` Nomen Nescio
2012-06-11  8:22                 ` Dmitry A. Kazakov
2012-06-11 14:27                   ` Georg Bauhaus
2012-06-11 14:43                     ` Dmitry A. Kazakov
2012-06-11 16:19                       ` Jacob Sparre Andersen
2012-06-11 18:38                         ` Dmitry A. Kazakov
2012-06-11 17:14                       ` Georg Bauhaus
2012-06-11 18:38                         ` Dmitry A. Kazakov
2012-06-11 20:50                           ` Georg Bauhaus
2012-06-11 21:43                             ` Yannick Duchêne (Hibou57)
2012-06-12  7:55                             ` Dmitry A. Kazakov
2012-06-12  9:48                               ` Georg Bauhaus
2012-06-12 11:44                                 ` Dmitry A. Kazakov
2012-06-12 12:17                                   ` Georg Bauhaus
2012-06-12 12:18                                     ` Dmitry A. Kazakov
2012-06-11 18:29                 ` Adam Beneschan
2012-06-11 19:16                   ` Jeffrey Carter
2012-06-11 21:47                   ` Yannick Duchêne (Hibou57)
2012-06-21 17:39                     ` Randy Brukardt
2012-06-21 17:34                   ` Randy Brukardt
2012-06-10 18:15       ` darkestkhan
2012-06-10 19:25         ` Dmitry A. Kazakov
2012-06-11  6:34         ` Jacob Sparre Andersen
2012-06-21 17:41         ` Randy Brukardt
2012-06-10 15:49   ` Shark8
2012-06-10 17:04     ` Yannick Duchêne (Hibou57)
2012-06-10 19:47       ` Dmitry A. Kazakov
2012-06-11  0:37         ` Nasser M. Abbasi
2012-06-11  8:37           ` Dmitry A. Kazakov
2012-06-12  6:24             ` Yannick Duchêne (Hibou57)
2012-06-12  7:59               ` Dmitry A. Kazakov
2012-06-13 10:35         ` quiet_lad
2012-06-13 13:09           ` Dmitry A. Kazakov
2012-06-14  3:21             ` quiet_lad
2012-06-14  7:58               ` Dmitry A. Kazakov
2012-06-14  8:39                 ` Yannick Duchêne (Hibou57)
2012-06-14  9:26                   ` Dmitry A. Kazakov
2012-06-21 17:51                   ` Randy Brukardt
2012-06-11  0:00     ` Nasser M. Abbasi
2012-06-11  3:23       ` Jeffrey Carter
2012-06-11 21:10         ` Nomen Nescio
2012-06-11 21:55           ` Adam Beneschan
2012-06-12  8:07             ` Nomen Nescio
2012-06-12 15:28               ` Fritz Wuehler
2012-06-12 21:34                 ` Nomen Nescio
2012-06-14 11:12                   ` Nomen Nescio
2012-06-21 18:01                   ` Randy Brukardt
2012-06-12 21:12             ` Nomen Nescio
2012-06-13  0:04               ` Adam Beneschan
2012-06-13  3:04                 ` Shark8
2012-06-13  8:21                   ` Dmitry A. Kazakov
2012-06-13 18:21                     ` Shark8
2012-06-13 19:11                       ` Dmitry A. Kazakov
2012-06-13 22:01                         ` Yannick Duchêne (Hibou57)
2012-06-14  8:02                           ` Dmitry A. Kazakov
2012-06-14  9:10                             ` Yannick Duchêne (Hibou57)
2012-06-14  9:33                               ` Dmitry A. Kazakov
2012-06-21 18:10                                 ` Randy Brukardt
2012-06-13  8:35                 ` Yannick Duchêne (Hibou57)
2012-06-13  8:37                 ` Georg Bauhaus
2012-06-13 10:14                   ` Georg Bauhaus
2012-06-11 22:49           ` Jeffrey Carter
2012-06-13 10:31     ` quiet_lad
2012-06-13 12:57       ` Maciej Sobczak
2012-06-14  4:18         ` quiet_lad
2012-06-14  7:35           ` Ludovic Brenta
2012-06-14 10:02             ` Georg Bauhaus
2012-06-12 19:17 ` i3text
2012-06-12 19:52 ` Vadim Godunko
2012-06-27 18:39 ` Eryndlia Mavourneen
2012-06-27 18:46 ` Eryndlia Mavourneen
2012-06-28 13:23   ` Simon Wright
replies disabled

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