comp.lang.ada
 help / color / mirror / Atom feed
From: "Robert I. Eachus" <rieachus@attbi.com>
Subject: Re: terminate applications
Date: Sun, 20 Jul 2003 17:53:16 GMT
Date: 2003-07-20T17:53:16+00:00	[thread overview]
Message-ID: <3F1AD6FB.8080806@attbi.com> (raw)
In-Reply-To: 3F1A772F.9060708@noplace.com

Marin David Condic wrote:
> Interesting, but not compelling because it just plain isn't terribly 
> useful to the end user. If I want a simple call to shoot the entire 
> program in the head, I don't want to study the Suma Theologica for 
> several years to figure out what programming sin I committed that is 
> keeping it from doing the thing I want done. :-) If there is some 
> Theoretical Purity that must be maintained to task abortion, then so be 
> it. Give me a Ada.Kill ("-9") ; subprogram call that will do what I want 
> it to do - kill the program regardless of what the rest of it may be doing.

First, send a comment to Ada-Comment.  I believe the address is 
currently ada-comment@ada-auth.org.  I think you have a good case for 
some sort of an �berkill.

But note that this cannot and should not be the normal behaviour of 
aborting the environment task, or any task.  This is not ideological 
purity.  Think of it this way.  Using your �berkill on a program that 
interfaces to a database will not only kill the program, it will break 
transactions and corrupt the database.  Yes, cycling the power can do 
the same thing, but correctly written Ada programs will not, even if the 
main program is aborted.  (It will of course abort transactions in 
progress, which is fine.  But the (correct) use of abort deferred 
regions will allow the main program to be aborted cleanly without 
corrupting any external files.

So why provide your hypothetical �berkill?  Because programmers are 
human, programs have errors, especially during development.  And it 
would be really nice to have the �berkill so you could fix the error. 
(It would be nice if you got an error message telling you where the 
abort was hanging, but the debugger should give you that.)

> All too often, Ada gets herself wrapped up in trying to maintain some 
> sort of purity on some issue and totally forgets that someone out there 
> needs a job done. Just like my desire to get saturated math gets shot 
> down by those who insist its behavior is too ill defined for the 
> standard. So what? Let it be ill defined. Its use in reality has 
> beneficial effects as an error recovery mechanism. It gets used in 
> reality all the time. All Ada succeeds in doing by maintaining this 
> purity is to make itself less useful to the practitioner - who must now 
> find some butt-ugly way around the problem.

If you think there is that kind of shootdown, send your complaint, 
again, to Ada-Comment.  But there is not.  I would love to see an 
addition to Ada 0Y that made saturated math easier, and I think it can 
be made to happen.  But the process is that real users (you) send in 
requirements indicating real needs, and the ARG will try to propose a 
language extension to WG9 that satisfies that need.

In the case of saturated arithmetic, that might be a predefined 
saturated type, or it could be a solution to the problem of literals for 
otherwise private types, say:

    type Saturated is private range <>;
    type Modular  is private mod <>;
    type Rational is private digits <>;
or type Rational is private delta <>;

which would get rid of the predefined operations (other than assignment 
and equality) but keep the literals.  How would users tell the compiler 
how to map the literals into values?  That is the tricky part.

-- 

                                                        Robert I. Eachus

�In an ally, considerations of house, clan, planet, race are 
insignificant beside two prime questions, which are: 1. Can he shoot? 2. 
Will he aim at your enemy?� -- from the Laiden novels by Sharon Lee and 
Steve Miller.




  reply	other threads:[~2003-07-20 17:53 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 [this message]
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
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
     [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
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 <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