comp.lang.ada
 help / color / mirror / Atom feed
From: munnari.oz.au!cs.mu.OZ.AU!munta.cs.mu.OZ.AU!fjh@uunet.uu.net  (Fergus Jam es HENDERSON)
Subject: Re: FORTRAN bug(was Re: C++ vs. Ada -- Is Ada loosing?)
Date: 12 Dec 92 14:20:17 GMT	[thread overview]
Message-ID: <9234801.7095@mulga.cs.mu.OZ.AU> (raw)

mfeldman@seas.gwu.edu (Michael Feldman) writes:

>You make a good point. Perhaps the modern equivalent of that Fortran
>single-keystroke bug is my favorite bit of C code (and no, I don't
>want to bash C, just point out how common these flukes are):
>
>   int x;
>   ...
>   x = 1;
>   while (x <= 10);
>   { 
>      printf("%d\n", x);
>      x++;
>   }

A good compiler would give a warning that the call to printf was
unreachable code. The only compiler I have available, gcc, unfortunately
doesn't give any such warning. But the Pascal-subset compiler I wrote (as one
of the projects for a 3rd-year subject) gives the following warnings for
the equivalent Pascal code:

warning: variable 'x' is not used after assignment, so assignment has no effect
warning: 'while' statement will cause an infinite loop

>Any similar idiosyncracies in Ada? 

The difference between '<' and '>' is only a single keystroke.
More insidious perhaps is the difference between '<' and '<='.
So it can happen even in Ada. 

However I do agree that Ada syntax is less error-prone than C or Fortran.
This is not because it is verbose but rather because the Ada designers took
this issue into careful consideration. I believe that it would be quite
possible to design a syntax that was concise but that was no more error-prone
than Ada.

-- 
Fergus Henderson             fjh@munta.cs.mu.OZ.AU      
This .signature virus is a self-referential statement that is true - but 
you will only be able to consistently believe it if you copy it to your own
.signature file!

             reply	other threads:[~1992-12-12 14:20 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1992-12-12 14:20 Fergus Jam es HENDERSON [this message]
  -- strict thread matches above, loose matches on Subject: below --
1992-12-18 21:56 FORTRAN bug(was Re: C++ vs. Ada -- Is Ada loosing?) Michael Feldman
1992-12-18  9:22 agate!spool.mu.edu!uwm.edu!zaphod.mps.ohio-state.edu!caen!uvaarpa!vger.ns
1992-12-16 17:40 Pascal Obry
1992-12-16 16:02 fred j mccall 575-3539
1992-12-15 16:36 enterpoop.mit.edu!bloom-picayune.mit.edu!mintaka.lcs.mit.edu!ogicse!uwm.e
1992-12-15  2:57 Michael Feldman
1992-12-15  2:43 Michael Feldman
1992-12-14 22:15 John Bollenbacher
1992-12-14 18:33 J. Giles
1992-12-14 17:04 agate!spool.mu.edu!yale.edu!qt.cs.utexas.edu!cs.utexas.edu!csc.ti.com!til
1992-12-14 17:00 agate!spool.mu.edu!sdd.hp.com!zaphod.mps.ohio-state.edu!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!mksol!mccall
1992-12-14 16:55 agate!spool.mu.edu!sdd.hp.com!zaphod.mps.ohio-state.edu!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!mksol!mccall
1992-12-12 17:53 Michael Feldman
1992-12-12 14:34 Fergus Jam es HENDERSON
1992-12-12  6:04 Bob Kitzberger
1992-12-12  0:42 Pascal Obry
1992-12-11 23:22 Tucker Taft
1992-12-11 22:24 John Nestoriak III
1992-12-11 21:31 Michael Feldman
1992-12-11 21:04 Tucker Taft
1992-12-11 15:38 Robb Nebbe
1992-12-11 13:29 agate!spool.mu.edu!uwm.edu!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!mkso
1992-12-09  6:02 Michael Feldman
1992-12-08 17:25 J. Giles
replies disabled

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