comp.lang.ada
 help / color / mirror / Atom feed
From: dmitry@elros.cbb-automation.de (Dmitry A. Kazakov)
Subject: Re: A case where Ada defaults to unsafe?
Date: Fri, 11 Jan 2002 09:14:03 GMT
Date: 2002-01-11T09:14:03+00:00	[thread overview]
Message-ID: <3c3ea66f.88422109@News.CIS.DFN.DE> (raw)
In-Reply-To: wcc7kqp52bm.fsf@shell01.TheWorld.com

On Thu, 10 Jan 2002 21:22:05 GMT, Robert A Duff
<bobduff@shell01.TheWorld.com> wrote:

>Ted Dennison<dennison@telepath.com> writes:
>
>> In article <wccwuyycht9.fsf@shell01.TheWorld.com>, Robert A Duff says...
>> >If you're looking for cases where Ada makes the default less safe, I can
>> >think of a few.  Here's one: "X: T := ...;" is a variable, whereas
>> >"X: constant T := ...;" is a constant.  IMHO, it should be the other way
>> >around ("X: var T := ...;" for a variable), since constants are safer
>> >than variables.

Why not "X : in out T := ...;" for variables, and "X : [in] T := ...;"
for constants?

[too many keywords already]

>> I think this is another example of the *real* design principle here,
>> which is to make the more common and more general form take the least
>> syntax, and use added syntax to specify a more constrained and/or less
>> common form.
>
>I do not agree with that design principle.  The default should be the
>thing that is safer/less-powerful.  To use the
>more-powerful/more-dangerous option should require extra syntax.
>What's more common is irrelevant.

Argee

If we continue the logic of providing extra syntax for dangerous
things, then IMO, it would be safer to require an initial value to be
given if there is no default. I.e. to have an uninitialized variable
one should write something like:

X : out T; -- No initial value

or even:

X : [in] out T := abstract; -- No initial value

X : [in out] T; -- Error, if T provides no initialization of its
instances

Regards,
Dmitry Kazakov



  reply	other threads:[~2002-01-11  9:14 UTC|newest]

Thread overview: 127+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-03 20:29 A case where Ada defaults to unsafe? Hyman Rosen
2002-01-03 20:38 ` Darren New
2002-01-03 21:36   ` Hyman Rosen
2002-01-04 14:29     ` Wes Groleau
2002-01-03 21:27 ` James Rogers
2002-01-03 21:32 ` Frank J. Lhota
2002-01-03 21:51   ` Hyman Rosen
2002-01-03 22:22     ` Ted Dennison
2002-01-03 23:07       ` Hyman Rosen
2002-01-03 23:38         ` Nick Williams
2002-01-04  0:15         ` Florian Weimer
2002-01-04  7:40         ` Preben Randhol
2002-01-04 14:39         ` Wes Groleau
2002-01-04 15:16         ` Ted Dennison
2002-01-04  3:35       ` Eric Merritt
2002-01-04 14:39         ` Robert A Duff
2002-01-04 14:27     ` Robert A Duff
2002-01-04 15:39       ` Larry Kilgallen
2002-01-04 15:57       ` Ted Dennison
2002-01-04 16:05       ` Ted Dennison
2002-01-10 21:22         ` Robert A Duff
2002-01-11  9:14           ` Dmitry A. Kazakov [this message]
2002-01-04 16:19       ` Brian Rogoff
2002-01-04 16:31         ` Ted Dennison
2002-01-08 20:55         ` Mark Lundquist
2002-01-16  0:14           ` Matthew Heaney
2002-01-16 20:19             ` Robert A Duff
2002-01-10 21:29         ` Robert A Duff
2002-01-11  9:25           ` Dmitry A. Kazakov
2002-01-19  0:35           ` Brian Rogoff
2002-01-19 14:15             ` Robert A Duff
2002-01-19 23:10               ` Brian Rogoff
2002-01-04 16:29     ` Robert Dewar
2002-01-04 17:32       ` Hyman Rosen
2002-01-04 18:50         ` Matthew Heaney
2002-01-04 18:56           ` Darren New
2002-01-04 19:10           ` Hyman Rosen
2002-01-04 20:08             ` Matthew Heaney
2002-01-04 20:14               ` Ted Dennison
2002-01-04 20:20               ` Hyman Rosen
2002-01-04 21:16                 ` Larry Kilgallen
2002-01-04 21:33                 ` Ted Dennison
2002-01-07 15:39                   ` Hyman Rosen
2002-01-07 16:06                     ` Ted Dennison
2002-01-07 16:50                     ` Larry Kilgallen
2002-01-07 17:18                       ` Hyman Rosen
2002-01-07 17:26                         ` Pat Rogers
2002-01-07 18:12                           ` Hyman Rosen
2002-01-07 18:40                             ` FGD
2002-01-07 20:04                             ` Pat Rogers
2002-01-05  0:08             ` Nick Roberts
2002-01-05 10:57               ` Simon Wright
2002-01-08 23:27                 ` Nick Roberts
2002-01-09  9:58                   ` Stuart Palin
2002-01-09 11:11                     ` Nick Roberts
2002-01-10 20:32                     ` Robert A Duff
2002-01-11  9:45                       ` Stuart Palin
2002-01-11 13:32                         ` Robert A Duff
2002-01-11 20:26                           ` Literate Programming [was: A case where ...] Nick Roberts
2002-01-12 16:37                             ` Georg Bauhaus
2002-01-13 14:46                               ` Nick Roberts
2002-01-14 14:17                             ` Eric Merritt
2002-01-14 23:20                               ` Nick Roberts
2002-01-15 18:54                                 ` Eric Merritt
2002-01-14 14:34                             ` Stephen Leake
2002-01-14 13:14                           ` A case where Ada defaults to unsafe? Stuart Palin
2002-01-14 14:38                             ` Preben Randhol
2002-01-16  6:00                             ` Simon Wright
2002-01-17  3:04                               ` David Starner
2002-01-17 15:08                                 ` Georg Bauhaus
2002-01-17 20:25                                   ` Simon Wright
2002-01-17  9:56                               ` Stuart Palin
     [not found]                           ` <3 <3C469FE6.B2C67ED6@baesystems.com>
2002-01-17 20:32                             ` Simon Wright
2002-01-14 14:35                         ` Preben Randhol
2002-01-14 16:36                         ` Robert A Duff
2002-01-12 12:27                   ` Simon Wright
2002-01-05  0:32         ` Robert Dewar
2002-01-14 16:09     ` Matthieu Moy
2002-01-20  8:59       ` Hyman Rosen
2002-01-20 19:13         ` Jim Rogers
2002-01-20 21:19           ` Ray Blaak
2002-01-03 22:07 ` Ted Dennison
2002-01-04 17:12   ` Preben Randhol
2002-01-04 17:21     ` Jean-Marc Bourguet
2002-01-04 18:54     ` Ted Dennison
2002-01-04  3:17 ` Larry Kilgallen
2002-01-04  8:27 ` Thierry Lelegard
2002-01-04  8:39   ` tmoran
2002-01-04  9:03     ` Thierry Lelegard
2002-01-04 14:43       ` Wes Groleau
2002-01-04 15:45       ` Ted Dennison
2002-01-04 16:37         ` Wes Groleau
2002-01-04 16:56           ` Ted Dennison
2002-01-04 11:51   ` Larry Kilgallen
2002-01-04 12:41   ` M. A. Alves
2002-01-04 15:42   ` Ted Dennison
2002-01-04 17:16     ` Hyman Rosen
2002-01-04 19:12       ` Ted Dennison
2002-01-04 23:36   ` Matthew Woodcraft
2002-01-05 15:00 ` Steve Doiel
2002-01-10 20:49   ` Robert A Duff
  -- strict thread matches above, loose matches on Subject: below --
2002-01-03 23:18 Gautier Write-only-address
2002-01-03 23:26 Gautier Write-only-address
2002-01-03 23:54 ` Larry Hazel
2002-01-04 14:33   ` Robert A Duff
2002-01-05 12:47 Gautier Write-only-address
2002-01-07 16:24 ` Ted Dennison
2002-01-07 18:17   ` FGD
2002-01-07 18:21     ` Hyman Rosen
2002-01-07 20:26       ` Matthew Woodcraft
2002-01-07 21:16         ` Hyman Rosen
2002-01-13  8:23           ` Hyman Rosen
2002-01-13  9:06             ` Preben Randhol
2002-01-13 10:41             ` Larry Kilgallen
2002-01-14  5:47               ` Hyman Rosen
2002-01-14 12:41               ` Georg Bauhaus
2002-01-13 18:21             ` Michal Nowak
2002-01-14  1:29               ` Ted Dennison
2002-01-14 14:36                 ` Ted Dennison
2002-01-14 22:43                 ` Michal Nowak
2002-01-10 20:47         ` Robert A Duff
2002-01-10 23:37           ` Preben Randhol
2002-01-11  1:31             ` Robert A Duff
2002-01-11 20:32               ` Nick Roberts
2002-01-11 16:47           ` Hyman Rosen
2002-01-07 16:45 Gautier Write-only-address
2002-01-07 19:33 ` Ted Dennison
replies disabled

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