comp.lang.ada
 help / color / mirror / Atom feed
From: Andrew Maizels <pixymisa@ozemail.com.au>
Subject: Re: ada paper critic
Date: Sat, 15 Jun 2002 01:58:11 +1000
Date: 2002-06-15T01:58:11+10:00	[thread overview]
Message-ID: <3D0A1293.5000005@ozemail.com.au> (raw)
In-Reply-To: mailman.1024065183.4624.comp.lang.ada@ada.eu.org

Alderson, Paul A. wrote:

>    MY_BIG_BLOATED_PACKAGE_NAME.MY_BIG_BLOATED_VARIABLE_NAME :=
> MY_OTHER_BIG_BLOATED_PACKAGE_NAME.MY_BIG_BLOATED_ARRAY_OR_FUNCTION(MY_BIG_BL
> OATED_GLOBAL_LIT_PACKAGE.AND_OF_COURSE_A_BIG_BLOATED_LITERAL);

Yeah, this sucks.  And having to haul in a dozen different packages to 
do anything useful sucks too.

> The main point here is that the Ada code above requires one to go and lookup
> what MY_BIG_BLOATED_ARRAY_OR_FUNCTION is.  Is it a function or an array?

This is a deliberate design feature.  I'm not sure whether I agree 
entirely or not.  But if you use [] for arrays and () for functions, 
what do you use for hashes and other structures where the lookup is 
actually performed by a function?

> Who knows?  The other not so subtle point is that Ada programs tend to use
> very large variable names.  Probably because many projects insist that "use"
> is a bad thing and require the package to be specified.  And since we want
> the package name to be descriptive everything referenced inside it uses
> allot of textual real-estate.  Therefore I personally think of Ada as a
> write only language.

To which I reply:
   if (++*(int *)*pc<*(int *)*(pc+1)) pc=*(pc+2);
(just something from a project I'm working on).

> Another issue that is often overlooked is that the computer language can not
> realistically be treated as a stand-alone unit.  Sure if you want to argue
> about "what ifs" or are into fantasy writings....  Here is where Ada falls
> by tripping over a steel girder onto its' face into a titanium floor.  The
> big issues of why Ada is either dead or in severe decline are:
> 
> (And the top ten "Why Ada is dead" reasons are!:)
> 
> 	1.) Ada is not taught anymore. (Never really ever were that many
> classes for it.)

Maybe.

> 	2.) Ada development environments lag 10 years behind MSVC for
> example.

I don't care for MSVC, but many people are lost without that sort of 
environment.  I haven't seen the commercial Ada environments, though, so 
I'm not sure you're right here.

> 	3.) Ada has no nice string handling capabilities.  
>          (Yeah yeah yeah library XYZ does...is it in the standard
> distribution?)

Huh?  Ada's string handling is just peachy.  It's annoying that there 
are six different string types, but everything you could ask for is there.

C, on the other hand, has the worst string handling of any major 
language.  C strings are *EVIL*.

> 	4.) Ada has no in-expensive development suits that are easy to use.

Gnat is easy to use.  Not flashy, but easy enough.

> 	5.) The Ada language is based upon hardware notions such as integers
> being a certain size and etc.
> 		(Would not it have had been better to make numeric
> declarations fit their use instead
>              of forcing the programmer to think about the computer
> hardware?)
> 		Example:
> 			If I want a number that represents the month in
> terms of a whole value
> 			would not the following be a better way:
> 
> 			month : 1..12;
> 
> 			Do I care that a byte or int is allocated?  If I do
> then I'll say so!

Again, huh?  I can specify a subrange if I want.  I can specify a 
precise number of bits if I want, too.  And C gives me, what?  Short is 
no longer than int, and long is no shorter than int.  Wonderful.

> 			One might argue that you CAN DO RANGES, but my
> pre-emptive counter point is
>                   that one does not have to use pointers in C either!
> Meaning why does integer
> 			exist?

As far as I can tell, this is a complete non-sequitur.

>       6.) GENERICS GENERICS GENERICS
> 		If the programmer used generics heavily and you must certify
> to level-A you either:
> 			A.) Test one instance and say the rest are the same
> (hopefully)
> 			B.) Incur huge verification costs.

Compared to what?

[snip]

> To be fair Ada does have its beneficial side, but it comes at a high price.
> People will argue that its that much safer and better and you can't be safe
> with C.  When you point out the use of LINT they then interject that its an
> additional cost and not part of the language.  But it still is available and
> essentially gets you Ada type checking and great analysis of your code (even
> style!).  So pretty much in my eyes all current languages are severely
> flawed in one aspect or another.  It all really boils down to good software
> people - not the language.  Just remember things have gone boom using Ada
> and things have gone boom using C.  So it seems that the language can't
> prevent these things!  The overall point is that Ada is not the answer to
> everything.

There's still no silver bullet, it's true.  I find C better when I want 
to get close to the metal; I can look at a line of C and be pretty sure 
how the executable will come out.  But errors in my C code tend to make 
my program crash in strange and wonderful ways, while Ada catches the 
problem at compile time.  Lint doesn't come close to the kind of 
compile-time and run-time safety that Ada offers.

Andrew.
-- 
This sig no verb.




  parent reply	other threads:[~2002-06-14 15:58 UTC|newest]

Thread overview: 121+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-06-14 14:31 ada paper critic Alderson, Paul A.
2002-06-14 15:16 ` Darren New
2002-06-14 15:58 ` Andrew Maizels [this message]
2002-06-14 17:00   ` chris.danx
2002-06-14 18:44     ` Jeffrey Carter
2002-06-14 20:26       ` Immanuel Scholz
2002-06-14 22:06         ` Ehud Lamm
2002-06-14 22:01           ` Immanuel Scholz
2002-06-14 22:38             ` sk
2002-06-15 11:28               ` Immanuel Scholz
2002-06-15 18:10                 ` sk
2002-06-15 14:30               ` Ted Dennison
2002-06-15 17:36                 ` sk
2002-06-16  3:08                 ` Gautier
2002-06-16  0:05               ` AG
2002-06-16 21:05                 ` Gautier
2002-06-14 23:10             ` tmoran
2002-06-15 14:19         ` Ted Dennison
2002-06-15 23:04           ` Darren New
2002-06-15 23:38             ` Darren New
2002-06-17 10:56           ` Immanuel Scholz
2002-06-17 19:56             ` Brian Rogoff
2002-06-17 20:47               ` Marin David Condic
2002-06-18 18:10                 ` Brian Rogoff
2002-06-18 18:51                   ` Robert A Duff
2002-06-18 19:08                     ` Hyman Rosen
2002-06-18 20:47                       ` Robert A Duff
2002-06-19  5:28                 ` Robert I. Eachus
2002-06-18 14:01               ` Robert A Duff
2002-06-14 20:58 ` Ted Dennison
2002-06-14 21:30   ` Immanuel Scholz
2002-06-15  1:24     ` Larry Kilgallen
2002-06-15  3:02 ` Vinzent Hoefler
2002-06-15 21:54 ` AG
  -- strict thread matches above, loose matches on Subject: below --
2002-06-14 22:28 Gautier direct_replies_not_read
2002-06-15 14:43 ` Ted Dennison
2002-06-14 22:18 Beard, Frank [Contractor]
2002-06-15  1:38 ` Jeffrey Carter
2002-06-14 22:08 Beard, Frank [Contractor]
2002-06-14 20:36 Beard, Frank [Contractor]
2002-06-14 21:34 ` Immanuel Scholz
2002-06-15  4:14   ` Lyle McKennot
2002-06-14 20:06 Gautier no_direct_reply_please
2002-06-14 20:48 ` Baugereau
2002-06-15 14:38   ` Ted Dennison
2002-06-14 19:42 Gautier no_direct_reply_please
2002-06-15 15:08 ` Simon Wright
2002-06-15 22:52 ` Robert A Duff
2002-06-16  0:38   ` AG
2002-06-17 14:15     ` Marin David Condic
2002-06-18 13:52       ` Robert A Duff
2002-06-18 15:41         ` Darren New
2002-06-18 18:04         ` Jeffrey Carter
2002-06-19  1:04           ` Rod Haper
2002-06-16 22:19   ` Ted Dennison
2002-06-16 23:02     ` Robert A Duff
2002-06-17  7:07       ` Kevin Cline
2002-06-18 20:54         ` Robert A Duff
2002-06-18 22:15           ` Larry Kilgallen
2002-06-14  0:49 Immanuel Scholz
2002-06-14  1:28 ` Immanuel Scholz
2002-06-14  1:43   ` Dale Stanbrough
2002-06-14  4:53     ` David Marceau
2002-06-14  6:40       ` Dale Stanbrough
2002-06-14  6:49       ` Hyman Rosen
2002-06-14 12:18       ` Baugereau
2002-06-14 16:30         ` David Marceau
2002-06-14 17:34           ` Baugereau
2002-06-14 19:01             ` Wes Groleau
2002-06-14 19:43               ` Baugereau
2002-06-15  3:02                 ` Vinzent Hoefler
2002-06-15  9:49                   ` Pascal Obry
2002-06-17 15:53                     ` Dan Andreatta
2002-06-17 18:20                       ` Pascal Obry
2002-06-17 20:56                     ` Michael Bode
2002-06-17 21:18                       ` Pascal Obry
2002-06-16 21:52                   ` Ted Dennison
2002-06-14 20:02     ` Immanuel Scholz
2002-06-14  3:14   ` Ted Dennison
2002-06-14  4:35     ` Dale Stanbrough
2002-06-14  8:05       ` David Marceau
2002-06-14 12:31         ` Dale Stanbrough
2002-06-14 15:08         ` Darren New
2002-06-17  0:17           ` Robert A Duff
2002-06-14 19:05         ` Wes Groleau
2002-06-16  3:34           ` Dale Stanbrough
2002-06-16  3:32         ` Dale Stanbrough
2002-06-14  8:25       ` Dmitry A. Kazakov
2002-06-14 12:19         ` Immanuel Scholz
2002-06-14 14:51           ` Dmitry A. Kazakov
2002-06-14 15:09             ` Darren New
2002-06-16 22:49               ` Dmitry A.Kazakov
2002-06-16 15:07                 ` Jim Rogers
2002-06-17  4:06                   ` Darren New
2002-06-17  4:52                     ` Jim Rogers
2002-06-17  9:45                       ` David Marceau
2002-06-17 15:42                       ` Darren New
2002-06-17  3:59                 ` Darren New
2002-06-17 22:19                   ` Dmitry A.Kazakov
2002-06-14 12:58       ` Larry Kilgallen
2002-06-14 22:16         ` Dale Stanbrough
2002-06-15  1:22           ` Larry Kilgallen
2002-06-15  0:51             ` Dale Stanbrough
2002-06-15 11:49               ` Immanuel Scholz
2002-06-15 21:45             ` Robert A Duff
2002-06-14 14:59       ` Ted Dennison
2002-06-16  3:27         ` Dale Stanbrough
2002-06-16 22:18           ` Wes Groleau
2002-06-16 22:38           ` Ted Dennison
2002-06-14 15:00       ` Ted Dennison
2002-06-14 20:13         ` Wes Groleau
2002-06-14 18:52       ` Jeffrey Carter
2002-06-15 22:03         ` Robert A Duff
2002-06-16  1:58           ` Jeffrey Carter
2002-06-16  3:19             ` Dale Stanbrough
2002-06-16 22:20         ` Wes Groleau
2002-06-17  1:57           ` Larry Kilgallen
2002-06-17  2:16           ` Jeffrey Carter
2002-06-14 15:25   ` John R. Strohm
2002-06-15  4:05     ` Lyle McKennot
2002-06-17 13:32       ` Marin David Condic
replies disabled

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