comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Division by zero
Date: Tue, 14 Jun 2005 15:22:27 -0500
Date: 2005-06-14T15:22:27-05:00	[thread overview]
Message-ID: <Fv6dnVhzzIJzpjLfRVn-qA@megapath.net> (raw)
In-Reply-To: _pwre.7121$U4.1023104@news.xtra.co.nz

"Lurker" <nowhere@nothing.com> wrote in message
news:_pwre.7121$U4.1023104@news.xtra.co.nz...
> "Robert A Duff" <bobduff@shell01.TheWorld.com> wrote in message
> news:wccfyvm78k0.fsf@shell01.TheWorld.com...
>
> > Now I have a variable Gizmos, and I want to print out the
> > numbers of Gizmos per Widget (when that's meaningful).
> > In *portable* code, I might want to write:
> >
> >     if Widgets = 0 then
> >         Put_Line("Unknown");
> >     else
> >         Put_Line(Image(Gizmos/Widgets));
> >     end if;
> >
> > If divide by zero were illegal at compile time, even in unreachable
> > code, the above would be annoying illegal on Unix.
>
> Interesting example. I guess I'm taking it a bit on a tangent now
> but how does that square off with RM 11.6.5 which says in part:
>
> ... The exception need be raised by the implementation only if, in the
> absence of raising it, the value of this undefined result would have some
> effect on the external interactions of the program ...
>
> Yes, I know it's just an implementation permission and so doesn't define
> the language. Yet, the idea seems to be that if there is no possible
> observable
> effect then it's ok. Shouldn't the same logic apply in your example as
well?

No, because 11.6 doesn't apply to Legality Rules, only runtime effects. If
the program is illegal, it can hardly have a runtime effect, and certainly
it is not raising any exceptions.

                         Randy.








  reply	other threads:[~2005-06-14 20:22 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-11 21:03 Division by zero Lurker
2005-06-12  2:00 ` David C. Hoos, Sr.
2005-06-12  3:04   ` Lurker
2005-06-12  8:39     ` Dmitry A. Kazakov
2005-06-12  9:43       ` Lurker
2005-06-12 10:36         ` Marius Amado Alves
2005-06-12 11:53         ` Dmitry A. Kazakov
2005-06-13  8:03         ` Ole-Hjalmar Kristensen
2005-06-12 13:10       ` Robert A Duff
2005-06-12 16:55         ` Jeffrey Carter
2005-06-13  3:22           ` Keith Thompson
2005-06-14  2:14             ` Jeffrey Carter
2005-06-13  8:47           ` Lurker
2005-06-14  2:19             ` Jeffrey Carter
2005-06-14  8:35               ` Keith Thompson
2005-06-13 12:19           ` Robert A Duff
2005-06-14  2:31             ` Jeffrey Carter
2005-06-14  8:21             ` Lurker
2005-06-14 20:22               ` Randy Brukardt [this message]
2005-06-28 21:22               ` Robert A Duff
2005-06-29  5:50                 ` Lurker
2005-06-29 13:27                   ` Robert A Duff
2005-06-29 13:54                     ` Dmitry A. Kazakov
2005-06-29 16:03                       ` Robert A Duff
2005-06-30  1:19                     ` Lurker
2005-06-30 11:16                       ` Stuart Palin
2005-06-29 13:50                   ` Dmitry A. Kazakov
2005-06-29 16:07                     ` Robert A Duff
2005-06-30  8:27                       ` Dmitry A. Kazakov
2005-06-29  9:20                 ` Lurker
2005-06-29  9:49                   ` Christoph Grein
2005-06-29 10:40                     ` Lurker
2005-06-29 11:04                       ` Jeff Creem
2005-06-29 12:28                         ` Martin Dowie
2005-06-29 13:40                   ` Robert A Duff
     [not found]     ` <5sana1pm436l6vboifijqblu0irf84afkr@4ax.com>
2005-06-12 17:38       ` Simon Wright
2005-06-12 12:21 ` Robert A Duff
2005-06-12 22:53 ` Georg Bauhaus
2005-06-13  8:34   ` Lurker
2005-06-13  8:54     ` Marius Amado Alves
2005-06-13 17:59       ` 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