comp.lang.ada
 help / color / mirror / Atom feed
From: James Rogers <jimmaureenrogers@worldnet.att.net>
Subject: Re: Integers and Mathematical Correctness
Date: Tue, 06 Nov 2001 14:48:09 GMT
Date: 2001-11-06T14:48:09+00:00	[thread overview]
Message-ID: <3BE7F836.B9B78AB5@worldnet.att.net> (raw)
In-Reply-To: 9s7ulq02pdq@drn.newsguy.com

"peter@nospam" wrote:
> 
> In article <3BE766F6.3D014CD8@worldnet.att.net>, James says...
> >
> 
> >Note that this error would have been caught by an Ada compiler.
> >C never notices the problem at all.
> >
> 
> Many languages do not notice these things and more, but people still use
> them, much more than Ada, and they spend long hours in the 'debugger' trying
> to find why the problem does not work (then feel so good about finding the
> bug). There is a whole industry out there build around debugging C
> flavoured languages.
> 
> I wonder if the latest C flavoured language 'C#/windows only language',
> from Microsoft fixes some of these problems?

I think this was the point Marin was making. C has header files that
define minimum and maximum values for numeric types, but the use
of those header files is optional. Furthermore, those minimum and
maximum values are not part of the type definition. Instead, they
are simply constants defined in several header files.

The C constants provide you the opportunity to develop code to 
check for overflow or underflow conditions. There is no default
check for those conditions.

My cursory look at C# indicates that it also has the implicit
conversions found in C, C++, and Java. Note that Java, for
instance, "solves" the implicit conversion problem by making all
integer forms use unsigned semantics even though all the 
integer types are signed entities. This ensures that the result
of all implicit conversions will be a value within the range of
the type on the left hand side of an assignment. Of course, there
is no assurance that the result will be even remotely correct
in a mathematical sense.

As you say, many people use these languages and spend long hours
debugging their code. My experience is that people use these
languages for two primary reasons: they have been told to and
they do not know any better. Neither of these reasons provide any
technical justification.

Jim Rogers
Colorado Springs, Colorado USA



  reply	other threads:[~2001-11-06 14:48 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-10-31 20:27 Integers and Mathematical Correctness chris.danx
2001-10-31 21:21 ` David C. Hoos
2001-10-31 22:16   ` chris.danx
2001-10-31 22:47     ` David C. Hoos
2001-10-31 22:55       ` chris.danx
2001-10-31 23:16         ` Matthew Heaney
2001-10-31 21:42 ` Mark Johnson
2001-11-01 18:57   ` Mark Johnson
2001-11-01 14:32 ` Wes Groleau
2001-11-01 16:18   ` wilhelm.spickermann
2001-11-01 16:48   ` chris.danx
2001-11-01 15:45 ` Charles Sampson
2001-11-01 16:20   ` Marin David Condic
2001-11-03 17:02     ` Richard Riehle
2001-11-05 14:47       ` Marin David Condic
2001-11-06  3:53         ` Eric G. Miller
2001-11-06  4:28           ` James Rogers
2001-11-06  6:06             ` peter
2001-11-06 14:48               ` James Rogers [this message]
2001-11-06 15:54                 ` Marin David Condic
2001-11-07  3:44             ` Eric G. Miller
2001-11-01 17:10   ` chris.danx
2001-11-01 17:52     ` Chad Robert Meiners
2001-11-01 19:02       ` chris.danx
2001-11-01 17:57     ` Wes Groleau
2001-11-03 14:57     ` Charles Sampson
2001-11-01 16:11 ` Charles Lindsey
2001-11-01 18:40   ` Wilhelm Spickermann
2001-11-01 19:18   ` chris.danx
2001-11-02  1:37     ` Steven Deller
2014-09-26  9:07       ` vincent.diemunsch
2014-09-26 16:38         ` Niklas Holsti
2014-09-26 16:58           ` AdaMagica
2014-09-26 17:51             ` Adam Beneschan
2014-09-27  9:01               ` AdaMagica
2014-09-27 10:15                 ` AdaMagica
2014-09-27 16:32                 ` Niklas Holsti
2014-09-27 16:49                   ` Jeffrey Carter
2014-09-27 18:52                     ` Niklas Holsti
2014-09-27 18:54                   ` Adam Beneschan
2014-09-27 19:07                     ` Adam Beneschan
     [not found]                 ` <3489504a-f82b-4fec-8a6c-7cb91854dd1e@googlegroups.com>
2014-09-27 19:21                   ` AdaMagica
2014-09-27 11:44           ` gautier_niouzes
2014-09-26 16:41         ` Adam Beneschan
2014-09-26 16:46         ` Adam Beneschan
2014-09-27 15:21           ` vincent.diemunsch
     [not found]             ` <34da5a39-9fa3-4e8e-a3f9-98f61a4ebcc7@googlegroups.com>
2014-09-28  7:47               ` Dmitry A. Kazakov
2014-09-29 14:58                 ` Adam Beneschan
2014-09-29 16:25                   ` Dmitry A. Kazakov
2014-10-01 19:48                   ` vincent.diemunsch
2014-10-02 11:10                     ` G.B.
2001-11-01 18:08 ` Tucker Taft
2001-11-01 18:54 ` David Starner
2001-11-01 21:44   ` Wilhelm Spickermann
2001-11-02 12:52 ` chris.danx
  -- strict thread matches above, loose matches on Subject: below --
2001-10-31 22:42 Beard, Frank
replies disabled

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