comp.lang.ada
 help / color / mirror / Atom feed
From: "Robert I. Eachus" <rieachus@comcast.net>
Subject: Re: += in ada
Date: Mon, 20 Oct 2003 19:11:07 GMT
Date: 2003-10-20T19:11:07+00:00	[thread overview]
Message-ID: <3F94332E.3010500@comcast.net> (raw)
In-Reply-To: 1066672418.232220@master.nyc.kbcfp.com

Hyman Rosen wrote:

 > Let me see if I understand this correctly. The acceptance criteria
 > were looser for programmers of what you and I both agree is a more
 > error-prone language? Those 30% who were hopeless for Ada were also
 > hopeless for C. That's why there were maintenance problems with the C
 > code.

I'd love to do a wink and a nod, and agree with you.  But I can't.  The
key issue was abstraction.  Some programmers just couldn't get it.  They
could generated decent code in C or assembler, but when it came to Ada,
they, like Joe, couldn't accept the idea of abstraction and information
hiding.  There may have been some way to reach those programmers, but we
didn't find it.  Anyone who gets information hiding tends to love Ada.

It all comes back that debugging question.  With information hiding the
amount of information the programmer needs to understand his code is
limited.  That means that the code--in the context of information
hiding--is much easier to understand.  But you HAVE to do unit test!
Otherwise you are trying to debug at several levels at once, and your
head hurts.

Of course, if you do design and unit testing right, then any bugs you
uncover during unit test are so immediately obvious that there is no
need for a debugger.  I hit one of those bugs last week, an off by one
error in the bounds of a slice.  It was immediately obvious from the
output of the test program which function had failed, and that function
had one assignment statement in it, so I didn't really need the compiler
telling me which line raised Constraint_Error.

The programmers who failed to succeed on the "homework" assignments
almost universally had a problem showing up when they, after skipping 
unit test, tried to debug their programs with the debugger.  Decent 
debugger, but when you are looking at code that is generated from 
multiple levels of abstraction the debugger as such is no help.  You 
have to insert print statements at different abstraction levels to find 
the problem--or go back and write those unit tests.

We called it the "one little bug syndrome" and it was a killer.  And I 
still see it in programmers today.  When their program doesn't work, 
they are sure that there is only "one little bug" remaining and 
suggesting they go back and do it right just infuriates them.

The other failures, although there were officially no grades, were those 
who insisted on working around Constraint_Error or compiler error 
messages rather than try to fix what was wrong.  Again user headspace 
adjustment--they couldn't accept that the compiler was helping them by 
generating all those messages.  It made me very understanding of the 
companies whose Ada policies said "No use of Unchecked_Conversion," and 
change requests for Ada 9X that basically asked for some way to work 
around such "stupid" rules.  Such understanding, of course, did not 
extend to changing the language.  The fact that I knew that many of 
these requests came from employees of companies who had relatively 
liberal policies on exceptions to the project software development guide 
helped me to understand what was going on.  In fact at the Ada 9X 
Requirements meeting in Ft. Walton Beach, I was able to point out that 
several of these requests were worded correctly:  "I am not permitted to 
use Unchecked_Conversion, and..."  Cut it at the and, emphasize the "I" 
and you understood.


-- 
                                                     Robert I. Eachus

"Quality is the Buddha. Quality is scientific reality. Quality is the
goal of Art. It remains to work these concepts into a practical,
down-to-earth context, and for this there is nothing more practical or
down-to-earth than what I have been talking about all along...the repair
of an old motorcycle."  -- from Zen and the Art of Motorcycle
Maintenance by Robert Pirsig




  reply	other threads:[~2003-10-20 19:11 UTC|newest]

Thread overview: 303+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-09-25 16:25 += in ada Dmytry Lavrov
2003-10-01  8:35 ` Peter Amey
2003-10-01 12:38   ` Frank J. Lhota
2003-10-03 16:22     ` Isaac Gouy
2003-10-06 20:21       ` Russ
2003-10-06 22:47         ` (see below)
2003-10-04 20:17   ` Craig Carey
2003-10-06  7:36     ` Jean-Pierre Rosen
2003-10-06  8:13       ` Lutz Donnerhacke
2003-10-06 22:49       ` Wes Groleau
2003-10-01 14:06 ` Gautier
2003-10-02 12:26   ` Lutz Donnerhacke
2003-10-02 13:03     ` Preben Randhol
2003-10-02 13:36       ` Lutz Donnerhacke
2003-10-02 21:28         ` Keith Thompson
2003-10-07  0:41           ` Russ
2003-10-07 10:05             ` Dmytry Lavrov
2003-10-07 11:56               ` Lutz Donnerhacke
2003-10-07 14:02                 ` (see below)
2003-10-07 22:22                   ` Russ
2003-10-07 23:52                     ` (see below)
2003-10-08  6:08                     ` Preben Randhol
2003-10-09 19:07                       ` Russ
2003-10-09 19:42                         ` Vinzent 'Gadget' Hoefler
     [not found]                           ` <25oh51-uu2.ln1@beastie.ix.netcom.com>
2003-10-10  7:37                             ` Preben Randhol
2003-10-10 18:56                               ` Russ
2003-10-11  8:10                                 ` Preben Randhol
2003-10-11  8:30                                 ` Samuel Tardieu
2003-10-10 12:09                             ` Vinzent 'Gadget' Hoefler
2003-10-10  7:34                         ` Preben Randhol
2003-10-12  0:50                           ` Wes Groleau
2003-10-12  8:24                             ` Preben Randhol
2003-10-12 14:57                               ` Robert I. Eachus
2003-10-12 18:37                                 ` (see below)
2003-10-13  0:42                                   ` Robert I. Eachus
2003-10-13  8:32                                     ` Dmytry Lavrov
2003-10-13 19:18                                       ` Robert I. Eachus
2003-10-13 23:36                                     ` Alexandre E. Kopilovitch
2003-10-14  6:14                                       ` Vinzent 'Gadget' Hoefler
2003-10-14 15:19                                         ` Robert I. Eachus
2003-10-30 21:43                                     ` ARG process (was += in ada) Randy Brukardt
2003-10-30 23:21                                       ` Robert I. Eachus
2003-10-10 20:31                         ` += in ada Dmytry Lavrov
2003-10-12  8:23                           ` Dmytry Lavrov
2003-10-14 18:00                           ` Russ
2003-10-14 18:15                             ` Vinzent 'Gadget' Hoefler
2003-10-15 12:50                             ` Georg Bauhaus
2003-10-15 13:25                               ` Hyman Rosen
2003-10-15 14:04                                 ` Vinzent 'Gadget' Hoefler
2003-10-15 15:19                                   ` Hyman Rosen
2003-10-15 18:06                                     ` Vinzent 'Gadget' Hoefler
2003-10-15 18:53                                       ` Hyman Rosen
2003-10-15 19:34                                         ` Vinzent 'Gadget' Hoefler
2003-10-15 23:09                                         ` Alexandre E. Kopilovitch
2003-10-16  5:05                                     ` Russ
2003-10-16 12:07                                       ` Marin David Condic
2003-10-16 13:43                                       ` Hyman Rosen
2003-10-16 23:57                                         ` Robert I. Eachus
2003-10-17  6:22                                           ` Russ
2003-10-17  6:38                                             ` Preben Randhol
2003-10-17 15:48                                             ` Robert I. Eachus
2003-10-19  1:15                                               ` Russ
2003-10-19 16:04                                                 ` Robert I. Eachus
2003-10-19 23:59                                                   ` Russ
2003-10-20  5:24                                                     ` Chad R. Meiners
2003-10-20  5:52                                                       ` Robert I. Eachus
2003-10-20 12:40                                                         ` Marin David Condic
2003-10-20 14:36                                                           ` Preben Randhol
2003-10-21  0:23                                                           ` Wes Groleau
2003-10-21  3:46                                                             ` Hyman Rosen
2003-10-21  6:37                                                           ` Russ
2003-10-21 10:10                                                             ` Marius Amado Alves
2003-10-22  5:23                                                               ` Russ
2003-10-20 14:34                                                         ` Preben Randhol
2003-10-21  7:43                                                         ` Russ
2003-10-21 12:45                                                           ` Lutz Donnerhacke
2003-10-22  7:13                                                             ` Russ
2003-10-22  8:48                                                               ` Vinzent 'Gadget' Hoefler
2003-10-22  9:02                                                               ` Lutz Donnerhacke
2003-10-22 18:21                                                                 ` Russ
2003-10-22 19:10                                                                   ` Vinzent 'Gadget' Hoefler
2003-10-23  5:24                                                                     ` + " Russ
2003-10-22 19:16                                                                   ` += " sk
2003-10-22 19:13                                                                     ` Vinzent 'Gadget' Hoefler
2003-10-23  5:16                                                                     ` Russ
2003-10-23  5:45                                                                       ` sk
2003-10-22 21:22                                                                 ` Russ
2003-10-23  2:23                                                                   ` Wes Groleau
2003-10-22  9:46                                                               ` Preben Randhol
2003-10-22  8:01                                                             ` Russ
2003-10-21 13:38                                                           ` Robert I. Eachus
2003-10-22  7:24                                                             ` Russ
2003-10-22 19:50                                                               ` Robert I. Eachus
2003-10-23  5:34                                                                 ` Russ
2003-10-23 14:14                                                                   ` Robert I. Eachus
2003-10-24  9:15                                                                     ` Peter Hermann
2003-10-24 10:11                                                                       ` Marius Amado Alves
2003-10-26  7:35                                                                         ` Pascal Obry
2003-10-24 11:20                                                                       ` Marin David Condic
2003-10-25  3:14                                                                       ` Russ
2003-10-25  5:07                                                                     ` Russ
2003-10-19 23:19                                                 ` Robert A Duff
2003-10-20  6:16                                                   ` Russ
2003-10-20 14:31                                                     ` Preben Randhol
2003-10-20 17:10                                                     ` Robert I. Eachus
2003-10-20 17:53                                                       ` Hyman Rosen
2003-10-20 19:11                                                         ` Robert I. Eachus [this message]
2003-10-20 19:32                                                           ` Hyman Rosen
2003-10-20 23:24                                                           ` Alexandre E. Kopilovitch
2003-10-21  0:40                                                     ` Wes Groleau
2003-10-21  3:45                                                       ` Hyman Rosen
2003-10-21 12:07                                                         ` Preben Randhol
2003-10-21 12:18                                                           ` Marius Amado Alves
2003-10-21 12:45                                                         ` Marin David Condic
2003-10-21 14:46                                                           ` Robert I. Eachus
2003-10-21 17:54                                                             ` Chad R. Meiners
2003-10-21 20:23                                                               ` Robert I. Eachus
2003-10-22  0:18                                                             ` Wes Groleau
2003-10-22  4:07                                                               ` Robert I. Eachus
2003-10-22 20:41                                                                 ` Wes Groleau
2003-10-22 11:56                                                             ` Marin David Condic
2003-10-22  0:14                                                           ` Wes Groleau
2003-10-22 12:31                                                             ` Early Ada Mistakes (was: Re: += in ada) Marin David Condic
2003-10-22 20:05                                                               ` Robert I. Eachus
2003-10-23  4:47                                                                 ` Marin David Condic
2003-10-23 14:36                                                                   ` Early Ada Mistakes Hyman Rosen
2003-10-23 19:04                                                                     ` Chad R. Meiners
2003-10-24 13:33                                                                       ` Preben Randhol
2003-10-24 16:59                                                                         ` Robert I. Eachus
2003-10-23 19:08                                                                     ` Wes Groleau
2003-10-23 22:17                                                                       ` Robert I. Eachus
2003-10-24 11:26                                                                       ` Marin David Condic
2003-10-23 18:50                                                                   ` Wes Groleau
2003-10-22 21:00                                                               ` Wes Groleau
2003-10-23  4:53                                                                 ` Marin David Condic
2003-10-22  6:56                                                           ` += in ada Russ
2003-10-22  7:26                                                             ` Preben Randhol
2003-10-22 11:27                                                             ` Stephane Richard
2003-10-22 20:12                                                               ` Robert I. Eachus
2003-10-22 20:52                                                             ` Wes Groleau
     [not found]                                                         ` <emte61-d03.ln1@beastie.ix.netcom.com>
2003-10-21 12:57                                                           ` Hyman Rosen
2003-10-21  2:43                                                 ` Alexandre E. Kopilovitch
2003-10-21  9:39                                                   ` Stephane Richard
2003-10-19 22:26                                               ` Wes Groleau
2003-10-16  4:31                                   ` + " Russ
2003-10-16  8:57                                     ` += " Vinzent 'Gadget' Hoefler
2003-10-16 20:56                                     ` + " Georg Bauhaus
2003-10-16  4:04                               ` += " Russ
2003-10-16  8:57                                 ` Vinzent 'Gadget' Hoefler
2003-10-17  3:03                                 ` Wes Groleau
2003-10-17 11:46                                   ` Marin David Condic
2003-10-17 11:50                                     ` Preben Randhol
2003-10-17 12:40                                       ` sk
2003-10-17 12:48                                         ` Preben Randhol
2003-10-15 14:16                             ` Dmytry Lavrov
2003-10-16  5:40                               ` Russ
2003-10-16 12:45                                 ` Lutz Donnerhacke
2003-10-16 22:07                                   ` Russ
2003-10-17  9:10                                     ` Lutz Donnerhacke
2003-10-16 13:48                                 ` Dmytry Lavrov
2003-10-16 20:46                                 ` Georg Bauhaus
2003-10-17  2:37                                   ` Russ
2003-10-17  3:01                                     ` sk
2003-10-17  5:42                                       ` Russ
2003-10-17 11:26                                         ` sk
2003-10-17 20:24                                           ` Dmytry Lavrov
2003-10-17  3:52                                     ` Chad R. Meiners
2003-10-17  6:32                                     ` Preben Randhol
2003-10-17  8:48                                     ` Dmytry Lavrov
2003-10-16  1:25                             ` Chad R. Meiners
2003-10-19 23:50                               ` Robert A Duff
2003-10-20  5:52                                 ` Chad R. Meiners
2003-10-07 18:28                 ` Alexander Kopilovitch
2003-10-10 19:56                   ` Dmytry Lavrov
2003-10-20  7:41       ` idem (Was: += in ada) Jacob Sparre Andersen
2003-10-20  8:28         ` Dmitry A. Kazakov
2003-10-20  8:34         ` (see below)
2003-10-31 22:40         ` Nick Roberts
2003-10-14  9:52   ` += in ada Stuart Palin
2003-10-16  8:49     ` Russ
2003-10-16 12:46       ` Lutz Donnerhacke
2003-10-16 13:46         ` Hyman Rosen
2003-10-16 15:42           ` Mark A. Biggar
2003-10-16 16:48             ` Hyman Rosen
2003-10-17  0:26               ` Robert I. Eachus
2003-10-17  1:26                 ` Marin David Condic
2003-10-17  3:59                   ` Chad R. Meiners
2003-10-17 11:54                     ` Marin David Condic
2003-10-17 20:35                       ` Russ
2003-10-19 22:22                     ` Wes Groleau
2003-10-19  1:37                   ` Russ
2003-10-19  3:16                     ` sk
2003-10-19 14:10                     ` Preben Randhol
2003-10-19 14:29                     ` Marin David Condic
2003-10-20  2:47                       ` Russ
2003-10-20  3:03                         ` Vinzent 'Gadget' Hoefler
2003-10-20  5:47                         ` Chad R. Meiners
2003-10-20 12:56                           ` Marin David Condic
2003-10-20  6:19                         ` Ross Higson
2003-10-21 17:30                           ` Russ
2003-10-21 18:40                             ` sk
2003-10-22  7:35                               ` Russ
2003-10-21 23:28                             ` Ross Higson
2003-10-21 23:55                               ` Jerry Petrey
2003-10-22  7:35                             ` Preben Randhol
2003-10-20 16:30                         ` Martin Dowie
2003-10-20 17:05                           ` Hyman Rosen
2003-10-20 17:46                             ` Martin Dowie
2003-10-20 18:01                               ` Hyman Rosen
2003-10-21  0:57                           ` Wes Groleau
2003-10-21  1:46                             ` Stephane Richard
2003-10-21  3:38                             ` Hyman Rosen
2003-10-21  8:49                             ` Martin Dowie
2003-10-21  9:04                             ` Marius Amado Alves
2003-10-21 13:00                               ` Marin David Condic
2003-10-21 13:37                                 ` Marius Amado Alves
2003-10-21 14:50                                   ` Robert I. Eachus
2003-10-21 15:01                                     ` Stephane Richard
2003-10-21 15:03                                     ` Stephane Richard
2003-10-21 15:07                                     ` Vinzent 'Gadget' Hoefler
2003-10-21 15:13                                       ` Stephane Richard
2003-10-21 15:58                                       ` (see below)
2003-10-21 15:24                                     ` Dmitry A. Kazakov
2003-10-21 16:44                                     ` Marius Amado Alves
2003-10-22  7:32                                     ` Preben Randhol
2003-10-22  8:48                                       ` Vinzent 'Gadget' Hoefler
2003-10-22 20:24                                         ` Robert I. Eachus
2003-10-27 12:01                                           ` Vinzent 'Gadget' Hoefler
2003-10-27 17:31                                             ` Robert I. Eachus
2003-10-21 13:01                               ` Hyman Rosen
2003-10-21  4:49                           ` sk
2003-10-21 21:19                             ` Simon Wright
2003-10-22  4:37                               ` sk
2003-10-19 14:40                     ` chris
2003-10-19 15:12                     ` Stephane Richard
2003-10-19 16:26                     ` Robert I. Eachus
2003-10-20  2:02                       ` Hyman Rosen
2003-10-20  6:12                         ` Robert I. Eachus
2003-10-20 12:50                           ` Hyman Rosen
2003-10-20 17:53                             ` Robert I. Eachus
2003-10-20 18:03                               ` Hyman Rosen
2003-10-21  1:35                                 ` Marin David Condic
2003-10-21  3:05                             ` Alexandre E. Kopilovitch
2003-10-21  3:30                               ` Hyman Rosen
2003-10-21 13:22                                 ` Alexandre E. Kopilovitch
2003-10-21 15:02                                   ` Hyman Rosen
2003-10-19 21:09                     ` Dmytry Lavrov
2003-10-17 14:15                 ` Hyman Rosen
2003-10-17 14:40                   ` Lutz Donnerhacke
2003-10-17 15:40                     ` Hyman Rosen
2003-10-17 15:49                       ` Lutz Donnerhacke
2003-10-17 20:43                         ` Hyman Rosen
2003-10-17 16:02                       ` Preben Randhol
2003-10-17 16:06                         ` Preben Randhol
2003-10-19 22:36                         ` Wes Groleau
2003-10-18  0:08                   ` Russ
2003-10-18 10:31                     ` Georg Bauhaus
2003-10-20  5:35                   ` Chad R. Meiners
2003-10-20 13:00                     ` Hyman Rosen
2003-10-20 14:27                       ` (see below)
2003-10-20 15:58                         ` Chad R. Meiners
2003-10-16 21:53             ` Russ
2003-10-17  8:20           ` Lutz Donnerhacke
2003-10-17 14:21             ` Hyman Rosen
2003-10-17 14:42               ` Lutz Donnerhacke
2003-10-17 15:46                 ` Hyman Rosen
2003-10-17 15:35               ` Larry Kilgallen
2003-10-17 16:02               ` Robert I. Eachus
2003-10-17 17:20                 ` Chad R. Meiners
2003-10-16  8:57     ` Vinzent 'Gadget' Hoefler
  -- strict thread matches above, loose matches on Subject: below --
2003-10-01  8:54 christoph.grein
2003-10-04 12:51 ` Georg Bauhaus
2003-10-13  9:22 christoph.grein
2003-10-13 18:38 ` Wes Groleau
2003-10-13 18:59   ` Robert I. Eachus
2003-10-16  8:25 + " Lionel.DRAGHI
2003-10-16 13:22 ` Hyman Rosen
2003-10-16 14:30   ` Vinzent 'Gadget' Hoefler
2003-10-16 16:13 ` Russ
2003-10-16 21:47   ` Georg Bauhaus
2003-10-17 20:03     ` Russ
2003-10-16 15:55 Lionel.DRAGHI
2003-10-17  8:58 Lionel.DRAGHI
2003-10-20 10:42 += " christoph.grein
2003-10-21  6:16 ` Russ
2003-10-21  8:25   ` Ole-Hjalmar Kristensen
2003-10-21  8:40 += in Ada Marius Amado Alves
2003-10-21  8:41 += in ada christoph.grein
2003-10-22  5:00 ` Russ
2003-10-21  8:53 christoph.grein
2003-10-21 13:48 ` Ole-Hjalmar Kristensen
2003-10-22  7:31   ` Russ
2003-10-22  8:02     ` Preben Randhol
2003-10-22 11:41       ` Stephane Richard
2003-10-22 15:17       ` Chad R. Meiners
2003-10-22 15:47         ` Preben Randhol
2003-10-22 15:07     ` Martin Dowie
2003-10-21 10:03 christoph.grein
     [not found] <1066725615.2801.26.camel@localhost.localdomain>
2003-10-21 11:57 ` += in Ada sk
2003-10-21 12:07 += in ada christoph.grein
2003-10-21 13:51 ` Preben Randhol
     [not found] <3F957DAD.2020801@myob.com>
2003-10-21 21:16 ` Alexandre E. Kopilovitch
     [not found] ` <nSp8Qb_KxF@vib.usr.pu.ru>
2003-10-21 21:40   ` sk
replies disabled

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