comp.lang.ada
 help / color / mirror / Atom feed
From: Tucker Taft <stt@avercom.net>
Subject: Re: Ada Operating System
Date: Mon, 18 Mar 2002 11:18:26 -0500
Date: 2002-03-18T16:18:01+00:00	[thread overview]
Message-ID: <3C961352.DE25ADF1@avercom.net> (raw)
In-Reply-To: a6ihe7$2ge$1@nh.pace.co.uk

Marin David Condic wrote:
> 
> There's absolutely no getting around the fact that not all errors in
> programs are the kinds of things that can be caught by a compiler. Weak
> design, incorrect logic, failure to check all conditions, etc. are all
> things that no programming language can make up for with compile or runtime
> checks. I don't know that anyone here has ever contended that programming in
> Ada was going to result in error-free code.
> 
> I think the reasoning goes something like this: You can make logic errors in
> *any* programming language. You can make a whole slew of simple programming
> errors that are catchable by a compiler (what should we name these? "Coding
> Errors"? Let's call them that for the time being.) So if Ada allows you to
> make Logic Errors, but not Coding Errors and C/C++ lets you make both Logic
> *and* Coding errors, then it stands to reason that in general, programs will
> have fewer errors if written in Ada. I always use a spell-checker as an
> analogy. No spell-checker will stop me from saying stupid things - but it
> can help me catch the more mundane errors in what I write & thus reduce the
> overall error rate.

I would go a bit further than that.  It is true that Ada is very good at
catching "stupid" errors like leaving out a semicolon, misspelling an
identifier, swapping the order of parameters, indexing with the wrong
variable, etc.  But the surprising thing, once you start using a language
like Ada, is the number of "subtle" errors that it catches.  May favorite
analogy is that of trying to ski down a ski slope.  If there are is just
one (slalom) gate on the slope, pretty much anyone can make it through the gate
and down the slope.  However, once you get a few dozen gates, you have 
to have a "deeply correct" understanding of skiing to make it through
the "gauntlet," even though each gate is checking something "trivial."

In the same way, Ada throws up several "gates" on every line of the
program, both picky compile-time checks, and run-time checks for things
that can't be proved correct at compile-time.  The actual number of
checks performed compared to languages with a weaker typing model
is quite impressive when you start counting them.  All of these
checks are of the "mundane" variety, but the combination of them
all creates a gauntlet that, typically, only a "deeply consistent" 
program can satisfy.  The empirical evidence is that a program
written in a language with as many consistency checks as Ada, once
it makes it through the compile-time and run-time gauntlets, is much
closer to being "correct" than a program with a weaker gauntlet
to pass.  And the overall time required to bring a program to the
desired level of quality is significantly less because of these
gauntlets made up of "trivial" checks.

> BTW: I've had metrics on projects that bear this out. Its not just theory,
> but something measurable.
> 
> None of that means that an OS written in Ada is going to automagically be a
> better thing than Linux or Windows or anything else out on the market. It
> *can* be better, but it won't be just by virtue of the fact that it is
> written in Ada. I don't know that anyone here ever claimed it would be.
> 
> MDC
> 
> --
> Marin David Condic
> Senior Software Engineer
> Pace Micro Technology Americas    www.pacemicro.com
> Enabling the digital revolution
> e-Mail:    marin.condic@pacemicro.com
> Web:      http://www.mcondic.com/
> 
> "Hyman Rosen" <hyrosen@mail.com> wrote in message
> news:3C8C3C4E.9030703@mail.com...
> >
> > But this sort of thing isn't part of Ada, so if AdaOS will have it,
> > it will be because some decides to implement it. It then becomes
> > difficult to argue that the safety of AdaOS is due to the safety of
> > Ada.
> >

-- 
-Tucker Taft   stt@avercom.net   http://www.avercom.net
Chief Technology Officer, AverCom Corporation (A Titan Company) 
Bedford, MA  USA (AverCom was formerly the Commercial Division of AverStar:
http://www.averstar.com/~stt)



  reply	other threads:[~2002-03-18 16:18 UTC|newest]

Thread overview: 185+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-19 19:39 Ada Operating System Dann Corbit
2002-02-19 21:23 ` Adrian Knoth
2002-02-19 21:58 ` chris.danx
2002-02-19 22:40   ` Hugues Jerome
2002-02-20  0:38     ` Dann Corbit
2002-02-20 14:47       ` Joel Sherrill
2002-02-20 19:09         ` Hyman Rosen
2002-02-21 15:33           ` tony gair
2002-02-21 17:46             ` Chad R. Meiners
2002-02-21 17:57             ` Larry Kilgallen
2002-02-22  0:34               ` tony gair
2002-02-22  2:23                 ` Larry Kilgallen
2002-02-21 22:05             ` David Starner
2002-02-22  9:08             ` Adrian Hoe
2002-02-22 20:37               ` David Starner
2002-02-23  4:44                 ` Adrian Hoe
2002-02-23  6:10                   ` Mark Biggar
2002-02-23 18:04                   ` Richard Riehle
2002-02-23 18:07                   ` David Starner
2002-02-23 20:30                     ` Larry Kilgallen
2002-02-24  2:42                       ` David Starner
2002-02-24  4:27                       ` Larry Kilgallen
2002-02-24 17:15                         ` David Starner
2002-02-23 19:01                   ` Darren New
2002-02-25 13:51                   ` Marin David Condic
2002-02-26  0:47                     ` Larry Kilgallen
2002-03-05 14:16                       ` Marin David Condic
2002-02-25 17:56                   ` Pascal Obry
2002-02-25 20:01                   ` Randy Brukardt
2002-02-25 22:08                     ` Ted Dennison
2002-02-23 13:32                 ` Wannabe h4x0r
2002-02-23 13:53                   ` Jeffrey Creem
2002-02-25 18:00                     ` Pascal Obry
2002-02-23 14:05                   ` Samuel Tardieu
2002-02-23 14:31                   ` Florian Weimer
2002-02-23 20:09                     ` Wannabe h4x0r
2002-02-25 22:06                     ` Wes Groleau
2002-02-25  0:54                   ` Adrian Hoe
2002-02-25 12:52                   ` Ian S. Nelson
2002-02-23 16:41               ` Nick Roberts
2002-02-23 17:57               ` Richard Riehle
2002-02-23  3:11             ` Robert Dewar
2002-02-23  3:36               ` Dann Corbit
2002-02-23  4:42                 ` Larry Kilgallen
2002-02-25 14:05                   ` Marin David Condic
2002-02-26  0:48                     ` Larry Kilgallen
2002-02-23 18:12                 ` David Starner
2002-02-23 16:41           ` Nick Roberts
2002-02-20 13:48     ` Stephen Leake
2002-02-20  1:06 ` eunux
2002-02-23 16:41 ` Nick Roberts
2002-02-25 14:28   ` Marin David Condic
2002-02-27  5:23     ` James Ross
2002-03-05 14:28       ` Marin David Condic
2002-03-07  6:05         ` James Ross
2002-03-07 15:48           ` Marin David Condic
2002-03-08 16:03             ` Wes Groleau
2002-03-08 16:31               ` Marin David Condic
2002-03-09  9:46                 ` David Starner
2002-03-09 14:43                   ` Marin David Condic
2002-03-11 14:19                     ` Wes Groleau
2002-03-11 15:24                       ` Hyman Rosen
2002-03-09 15:40                 ` Wes Groleau
2002-03-09 15:52                   ` Marin David Condic
2002-03-09 17:54                 ` tmoran
2002-03-09 18:20                   ` Marin David Condic
2002-03-08 20:31               ` Dann Corbit
2002-03-09 15:42                 ` Wes Groleau
2002-03-09 16:34               ` Ian S. Nelson
2002-03-09 18:15                 ` Marin David Condic
2002-03-10  6:44                   ` Hyman Rosen
2002-03-10 14:37                     ` Larry Kilgallen
2002-03-11  5:03                       ` Hyman Rosen
2002-03-11 14:49                         ` Wes Groleau
2002-03-11 15:30                           ` Hyman Rosen
2002-03-11 17:30                             ` Wes Groleau
2002-03-11 17:45                               ` Hyman Rosen
2002-03-11 19:58                                 ` Wes Groleau
2002-03-12 17:42                         ` Warren W. Gay VE3WWG
2002-03-12 20:39                           ` Wes Groleau
2002-03-10 15:03                     ` Matthew Woodcraft
2002-03-10 19:40                     ` David Starner
2002-03-11  5:06                       ` Hyman Rosen
2002-03-11 15:11                         ` Marin David Condic
2002-03-18 16:18                           ` Tucker Taft [this message]
2002-03-18 17:24                             ` Marin David Condic
2002-03-25 17:25                             ` Darren New
2002-03-25 19:36                               ` Marin David Condic
2002-03-26  6:34                               ` James Ross
2002-03-26 13:56                                 ` Marin David Condic
2002-03-26 17:55                                 ` Darren New
2002-03-11 14:47                     ` Wes Groleau
2002-03-11 15:16                       ` Hyman Rosen
2002-03-11 16:04                         ` Marin David Condic
2002-03-12 17:45                           ` Warren W. Gay VE3WWG
2002-03-11 14:57                     ` Marin David Condic
2002-03-11 14:39                 ` Wes Groleau
2002-03-13  1:03               ` Pam Kelly
2002-03-13  1:45                 ` Gary Scott
2002-03-13  7:27                   ` David Starner
2002-03-13 14:02                     ` Marin David Condic
2002-03-13 22:42                     ` Pam Kelly
2002-03-13 23:28                       ` Larry Kilgallen
2002-03-27  0:51                         ` Brian Catlin
2002-03-13 23:51                       ` Marin David Condic
2002-03-14 15:54                     ` Alfred Hilscher
2002-03-13 13:54                   ` Marin David Condic
2002-03-14 13:17                     ` Larry Kilgallen
2002-03-14 17:32                       ` Marin David Condic
2002-03-13 13:49                 ` Marin David Condic
2002-03-14  2:09                   ` Pam Kelly
2002-03-14 16:01                   ` Alfred Hilscher
2002-03-14 17:43                     ` Marin David Condic
2002-03-16  9:06                       ` DPH
2002-03-16  8:00                   ` James Ross
2002-03-16 16:52                     ` Marin David Condic
2002-03-17  3:40                       ` Rod Haper
2002-03-16 20:07                     ` Robert A Duff
2002-03-17 11:23                       ` Preben Randhol
2002-03-17 21:36                       ` James Ross
2002-03-17 22:12                         ` Darren New
2002-03-18  1:25                           ` James Ross
2002-03-18  3:26                             ` Darren New
2002-03-18  5:06                               ` James Ross
2002-03-18  5:12                                 ` Darren New
2002-03-18  7:14                                   ` James Ross
2002-03-20 10:03                               ` Mats Karlssohn
2002-03-19  6:20                             ` David Starner
2002-03-23  6:06                               ` James Ross
2002-03-23 12:34                                 ` Preben Randhol
2002-03-23 21:44                                   ` David Starner
2002-03-24  3:47                                 ` Larry Kilgallen
2002-03-25 19:00                                   ` Preben Randhol
2002-03-25 19:27                                 ` Marin David Condic
2002-03-26 16:25                                   ` Wes Groleau
2002-03-26 18:01                                     ` Marin David Condic
2002-03-27 13:32                                       ` Wes Groleau
2002-03-27 14:22                                         ` sk
2002-03-27 16:39                                           ` Darren New
2002-03-27 17:07                                             ` Marin David Condic
2002-03-28  4:40                                               ` tmoran
2002-03-28 14:43                                                 ` Marin David Condic
2002-03-28  5:25                                               ` sk
2002-03-28  4:34                                       ` James Ross
2002-03-28 14:37                                         ` Marin David Condic
2002-03-29 17:52                                           ` Darren New
2002-03-26 20:23                                 ` Larry Kilgallen
2002-03-28 13:25                                 ` Larry Kilgallen
     [not found]                                 ` <a7ntns$7hh$Organization: LJK Software <vEY3SfNlq6Uc@eisner.encompasserve.org>
2002-03-28 14:58                                   ` Marin David Condic
2002-03-29 11:29                                 ` Larry Kilgallen
     [not found]                                 ` <a7ntns$7hh$Organization: LJK Software <Aj0bpsr17AIQ@eisner.encompasserve.org>
2002-03-29 14:02                                   ` Marin David Condic
2002-03-27 20:22                               ` John R. Strohm
2002-03-19  6:22                       ` David Starner
2002-03-13 14:08                 ` Wes Groleau
2002-03-13 22:02                   ` Pam Kelly
2002-03-13 22:19                     ` Larry Kilgallen
2002-03-13 23:26                       ` Pam Kelly
2002-03-14  0:49                         ` Adrian Knoth
2002-03-14 13:14                         ` Larry Kilgallen
2002-03-14 17:49                           ` Marin David Condic
2002-03-15 16:41                             ` Aidan Skinner
2002-03-15 19:26                             ` Mark Biggar
2002-03-15 20:14                               ` Marin David Condic
2002-03-15  8:03                   ` Tarjei T. Jensen
2002-03-12  2:23             ` James Ross
2002-03-12 15:28               ` Marin David Condic
2002-03-13  5:52                 ` James Ross
2002-02-27 11:30 ` Jorge Real
2002-02-28  5:34   ` tmoran
2002-02-28  8:56     ` chris.danx
2002-02-28 14:23       ` Wes Groleau
2002-02-28 13:19     ` Georg Bauhaus
2002-02-28 14:19     ` Wes Groleau
2002-02-28 15:24       ` chris.danx
2002-02-28 15:34         ` Ian Wild
2002-02-28 16:23           ` chris.danx
2002-02-28 17:52             ` Dave Poirier
2002-02-28 17:57               ` Dave Poirier
2002-03-02  4:01               ` Chad R. Meiners
2002-02-28 18:32         ` Tom Moran
2002-02-28 17:47     ` Dave Poirier
2002-02-27 21:50 ` Ken Pinard
2002-02-28  2:38   ` Dave Poirier
2002-02-28 13:49   ` Wes Groleau
2002-03-11 11:56 ` 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