comp.lang.ada
 help / color / mirror / Atom feed
From: "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca>
Subject: Re: terminate applications
Date: Fri, 25 Jul 2003 23:16:19 -0400
Date: 2003-07-25T23:16:19-04:00	[thread overview]
Message-ID: <mtmUa.2$XK4.458@read1.cgocable.net> (raw)
In-Reply-To: vi0gf8rnbu9b09@corp.supernews.com

"Randy Brukardt" <randy@rrsoftware.com> wrote in message news:vi0gf8rnbu9b09@corp.supernews.com...
> "Marin David Condic" <nobody@noplace.com> wrote in message
> news:3F1FC849.8070202@noplace.com...
> > If most OS's provide a given feature, there ought to be a way for an Ada
> > program to utilize that feature in a standard way. Worrying about the
> > fact that some OS provided feature might not fit in with Ada's desired
> > safety and security is what is going to guarantee that programmers are
> > going to do end-runs around Ada to use the C/C++ library that *will*
> > give them the feature - and eventually decide that its too much of a
> > nuisance to be programming in both Ada and C and revert to C.
>
> I agree that common operations from the OS ought to be supported in a
> standard way. But I disagree that that includes dangerous operations.

But dangerous for whom?  RAVENSCAR defines a number of Ada
features that they consider "unsafe", yet these features are
not soon to be removed from the "standard".

You must look at the application first. The OP has an "application"
for this feature, and I think it is presumptuous for us to say
that it is too dangerous to be used.

...
> Why should we go on propagating the mistakes of our forefathers? The
> functionality is the important point, not the exact form or details. If you
> don't believe that - if you believe that Ada can't be object-oriented
> because it doesn't declare "class"es, for instance - then you SHOULD be
> using C++. Ada has nothing to offer you then.

Let me ask a hypothetical question: which car would you prefer?

  1. Your year 2030 minivan says to you "I will not start because the
     hatch sensor indicates that it is not fully closed."  "Please
     correct the problem or get it repaired and try again. Have
     a nice day!"

or

  2. Your year 2030 minivan says "I will not start because the hatch
     sensor indicates that it is not fully closed. If you have
     checked the hatch, and it appears OK, then enter code XYZZY
     and then I will proceed anyway."

Which would you choose?  Microsoft will offer the #1 firmware.


For me, it better be #2, because I want to be in control! Not the
so and so manufacturer!

I think this API feature is about control. It has many times been
conceded that this is not the correct thing to do. But there are
_practical_ needs for this, if not for anything else, but for
testing.

> We should stick with "safe", well-defined operations in the standard Ada
> library. After all, people will use those first. If they absolutely have to
> use an unsafe operation, fine, but they'll have to do it by a direct
> interface to the OS (making the OS dependence clear).
>
> (For what's its worth, the C Exit is a safe exit -- for C. It does lots of
> finalization activities before it actually exits. Why should Ada be
> different in that regard?)
>
>                               Randy.

Ah, but exit() is only one C choice. The function _exit() is _also_
callable by the C programmer. Again, it is acknowledged that there
are good reasons not to use this, but the C programmer DOES have
the CHOICE to do so when it is required.

Give the programmer a choice. Document it as dangerous or
unsupported, but give the programmer the choice. Management can
dictate it out of a project if it needs to.

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg





  reply	other threads:[~2003-07-26  3:16 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-07-18  9:36 terminate applications christoph.grein
2003-07-18 10:54 ` Jeffrey Creem
2003-07-18 11:51   ` Marin David Condic
2003-07-18 13:26     ` Nick Roberts
2003-07-18 15:18     ` Jeffrey Creem
2003-07-19 15:44       ` Marin David Condic
2003-07-20  2:03         ` Robert I. Eachus
2003-07-20 11:04           ` Marin David Condic
2003-07-20 17:53             ` Robert I. Eachus
2003-07-21 12:02               ` Marin David Condic
2003-07-21 20:31                 ` Robert I. Eachus
2003-07-22 12:11                   ` Marin David Condic
2003-07-22 12:26                     ` Arnaud Charlet
2003-07-22 12:36                       ` Marin David Condic
2003-07-22 13:23                         ` Arnaud Charlet
2003-07-22 23:23                           ` Marin David Condic
2003-07-22 23:46                             ` Samuel Tardieu
2003-07-23 12:22                               ` Marin David Condic
2003-07-23 22:17                                 ` Randy Brukardt
2003-07-24  1:47                                   ` Hyman Rosen
2003-07-24  3:36                                     ` tmoran
2003-07-24  3:44                                       ` Hyman Rosen
2003-07-24  8:02                                         ` Samuel Tardieu
2003-07-24 19:54                                         ` Randy Brukardt
2003-07-24  7:45                                     ` Dmitry A. Kazakov
2003-07-24 14:54                                       ` Warren W. Gay VE3WWG
2003-07-24 15:46                                         ` Dmitry A. Kazakov
2003-07-26  2:58                                           ` Warren W. Gay VE3WWG
2003-07-28  8:17                                             ` Dmitry A. Kazakov
2003-07-28 21:08                                               ` Warren W. Gay VE3WWG
2003-07-29 10:42                                                 ` Marin David Condic
2003-07-29 13:47                                                   ` Hyman Rosen
2003-07-29 17:04                                                     ` Warren W. Gay VE3WWG
2003-07-24 12:01                                     ` Marin David Condic
2003-07-24 20:12                                     ` Randy Brukardt
2003-07-24 23:11                                       ` Robert I. Eachus
2003-07-26 12:52                                         ` Marin David Condic
2003-07-26  3:28                                       ` Warren W. Gay VE3WWG
2003-07-24 11:51                                   ` Marin David Condic
2003-07-24 20:32                                     ` Randy Brukardt
2003-07-26  3:16                                       ` Warren W. Gay VE3WWG [this message]
2003-07-26 13:16                                         ` Marin David Condic
2003-07-26 15:23                                           ` Nick Roberts
2003-07-26 15:48                                             ` Warren W. Gay VE3WWG
2003-07-27 11:36                                             ` Marin David Condic
2003-07-26 19:52                                           ` rleif
2003-07-26 13:01                                       ` Marin David Condic
2003-07-24 14:46                                   ` Warren W. Gay VE3WWG
2003-07-24 18:50                                     ` tmoran
2003-07-26 13:21                                       ` Marin David Condic
2003-07-23  4:02                             ` Robert I. Eachus
2003-07-23 12:28                               ` Marin David Condic
2003-07-24 16:06                                 ` Robert I. Eachus
2003-07-26 13:33                         ` Larry Kilgallen
2003-07-26 17:27                         ` Larry Kilgallen
     [not found]                         ` <Pine.LNX.4.44.0307221518190.26977-10000Organization: LJK Software <etldVqgp8sE1@eisner.encompasserve.org>
2003-07-26 20:18                           ` Warren W. Gay VE3WWG
2003-07-26 20:24                         ` Larry Kilgallen
     [not found]                         ` <Pine.LNX.4.44.0307221518190.26977-10000Organization: LJK Software <$TwrUBtoh25l@eisner.encompasserve.org>
2003-07-26 15:07                           ` Warren W. Gay VE3WWG
2003-07-27 11:43                           ` Marin David Condic
     [not found]                         ` <Pine.LNX.4.44.0307221518190.26977-10000Organization: LJK Software <q5jLYypXp6Yg@eisner.encompasserve.org>
2003-07-27 21:52                           ` Warren W. Gay VE3WWG
2003-07-28  2:45                         ` Larry Kilgallen
2003-08-01 17:00                           ` Warren W. Gay VE3WWG
2003-08-01 17:56                         ` Larry Kilgallen
2003-08-01 18:17                           ` Warren W. Gay VE3WWG
2003-08-01 18:48                         ` Larry Kilgallen
2003-07-22 12:59                       ` Lutz Donnerhacke
2003-07-22  5:16                 ` Randy Brukardt
2003-07-22 12:02                   ` Marin David Condic
2003-07-22 14:45                     ` Nick Roberts
2003-07-23  1:08 ` Dave Thompson
  -- strict thread matches above, loose matches on Subject: below --
2003-07-17 10:39 Riccardo
2003-07-17 19:54 ` Nick Roberts
2003-07-17 20:55   ` Mark A. Biggar
2003-07-17 22:44     ` Nick Roberts
2003-07-18  3:55 ` 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