From: kalvin.news@gmail.com
Subject: Re: Build language with weak typing, then add scaffolding later to strengthen it?
Date: Fri, 22 May 2015 10:51:31 -0700 (PDT)
Date: 2015-05-22T10:51:31-07:00 [thread overview]
Message-ID: <59a4ee45-23fb-4b0e-905c-cc16ce46b5f6@googlegroups.com> (raw)
In-Reply-To: <mjnpkt$b6j$1@dont-email.me>
perjantai 22. toukokuuta 2015 20.40.52 UTC+3 Simon Clubley kirjoitti:
> On 2015-05-22, kalvin-nospamhere-.news@gmail.com <kalvin-nospamhere.news@gmail.com> wrote:
> >
> > My point here is that although an int is an int, an int in one context may be totally different from another int, although both entities are of type int.
> >
> > For example, a low-level harddisk device driver might contain declarations like this:
> >
> > int cylinder = 1;
> > int head = 2;
> > int sector = 3;
> >
>
> What I would hope is that the designer uses unsigned integers for those
> variables and, in order to make the code portable across platforms, they
> used uint32_t and friends to encode within the program what the actual
> required size of those variables need to be.
>
> Simon.
>
> PS: This is _not_ a dig at you BTW but an observation on some C code
> that I have looked at. I don't like seeing see code use plain integers
> when an unsigned integer better models the problem at hand.
>
> --
> Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
> Microsoft: Bringing you 1980s technology to a 21st century world
Yes, I understand. I just wanted to make a point here, that an int should not be considered type compatible with another int if they are declared using different typedefs. Neverthless, my argument is still valid if I had used unsigned int, uint16_t or uint32_t:
typedef uint16_t Cylinder;
typedef uint16_t Head;
typedef uint32_t Sector;
The variables of type Cyliner, Head and Sector should be treated by the compiler as incompatible and different types unless they are explicitly typecasted.
next prev parent reply other threads:[~2015-05-22 17:51 UTC|newest]
Thread overview: 111+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-21 19:11 Build language with weak typing, then add scaffolding later to strengthen it? Nasser M. Abbasi
2015-05-21 19:29 ` AdaMagica
2015-05-22 7:27 ` Dmitry A. Kazakov
2015-05-22 7:42 ` Georg Bauhaus
2015-05-22 8:54 ` Nasser M. Abbasi
2015-05-22 11:29 ` kalvin.news
2015-05-22 12:57 ` J-P. Rosen
2015-05-22 14:01 ` kalvin.news
2015-05-22 14:34 ` kalvin.news
2015-05-23 11:09 ` Peter Chapin
2015-05-22 15:37 ` J-P. Rosen
2015-05-22 16:29 ` kalvin.news
2015-05-22 17:39 ` Simon Clubley
2015-05-22 17:51 ` kalvin.news [this message]
2015-05-22 19:41 ` J-P. Rosen
2015-05-22 20:04 ` kalvin.news
2015-05-22 20:32 ` Jeffrey R. Carter
2015-05-22 21:22 ` kalvin.news
2015-05-23 11:14 ` Peter Chapin
2015-05-23 12:42 ` Jeffrey R. Carter
2015-05-23 17:48 ` Simon Wright
2015-05-25 8:34 ` Pascal Obry
2015-05-25 10:22 ` Simon Wright
2015-05-25 18:12 ` Georg Bauhaus
2015-05-22 20:39 ` jan.de.kruyf
2015-05-28 22:33 ` Randy Brukardt
2015-05-29 6:56 ` jan.de.kruyf
2015-05-23 12:40 ` Georg Bauhaus
2015-05-25 7:14 ` jan.de.kruyf
2015-05-25 12:26 ` Georg Bauhaus
2015-05-25 18:44 ` Shark8
2015-05-25 19:54 ` jan.de.kruyf
2015-05-25 21:25 ` Shark8
2015-05-26 7:46 ` Georg Bauhaus
2015-05-26 8:12 ` Georg Bauhaus
2015-05-25 20:01 ` Nasser M. Abbasi
2015-05-25 20:04 ` Nasser M. Abbasi
2015-05-25 20:37 ` jan.de.kruyf
2015-05-26 7:52 ` Jacob Sparre Andersen
2015-05-26 11:43 ` jan.de.kruyf
2015-05-26 15:38 ` jan.de.kruyf
2015-05-28 23:39 ` Randy Brukardt
2015-05-29 8:51 ` Stefan.Lucks
2015-05-29 18:04 ` Jeffrey R. Carter
2015-05-29 21:51 ` Randy Brukardt
2015-05-30 10:28 ` jan.de.kruyf
2015-05-30 11:12 ` Dmitry A. Kazakov
2015-05-30 13:21 ` jan.de.kruyf
2015-05-30 15:00 ` Simon Clubley
2015-05-30 18:40 ` jan.de.kruyf
2015-05-30 16:40 ` Dmitry A. Kazakov
2015-05-30 20:52 ` jan.de.kruyf
2015-05-31 8:31 ` Nasser M. Abbasi
2015-05-31 8:52 ` Dmitry A. Kazakov
2015-06-04 15:31 ` jan.de.kruyf
2015-06-04 17:23 ` Dmitry A. Kazakov
2015-06-04 20:14 ` Shark8
2015-06-04 23:12 ` Nasser M. Abbasi
2015-06-01 21:36 ` Randy Brukardt
2015-06-04 15:22 ` jan.de.kruyf
2015-05-27 13:41 ` jan.de.kruyf
2015-05-25 23:05 ` Peter Chapin
2015-05-26 8:01 ` Sylvain Laperche
2015-05-26 8:20 ` Georg Bauhaus
2015-05-26 8:49 ` J-P. Rosen
2015-05-26 12:36 ` Simon Clubley
2015-05-26 13:39 ` J-P. Rosen
2015-05-26 14:21 ` Dmitry A. Kazakov
2015-05-26 16:19 ` Shark8
2015-05-26 20:51 ` J-P. Rosen
2015-05-26 17:11 ` Jeffrey R. Carter
2015-05-28 23:49 ` Randy Brukardt
2015-05-29 21:54 ` Randy Brukardt
2015-05-29 22:32 ` Jeffrey R. Carter
2015-05-26 8:17 ` Georg Bauhaus
2015-05-28 22:46 ` Randy Brukardt
2015-05-28 23:18 ` Nasser M. Abbasi
2015-05-29 21:27 ` Randy Brukardt
2015-05-29 7:55 ` jan.de.kruyf
2015-05-29 9:27 ` Simon Wright
2015-05-29 10:23 ` jan.de.kruyf
2015-05-29 12:01 ` G.B.
2015-05-29 13:43 ` jan.de.kruyf
2015-05-29 15:32 ` Simon Wright
2015-05-29 15:57 ` jan.de.kruyf
2015-05-29 9:31 ` Jacob Sparre Andersen
2015-05-29 10:37 ` jan.de.kruyf
2015-05-29 10:56 ` Björn Lundin
2015-05-29 12:03 ` Peter Chapin
2015-05-29 21:00 ` Shark8
2015-05-29 20:57 ` Shark8
2015-05-29 21:36 ` Randy Brukardt
2015-06-01 22:20 ` Shark8
2015-05-29 21:45 ` Randy Brukardt
2015-05-29 23:12 ` Peter Chapin
2015-05-30 9:10 ` Georg Bauhaus
2015-05-23 13:01 ` Luke A. Guest
2015-05-22 17:57 ` Simon Wright
2015-05-22 18:31 ` jan.de.kruyf
2015-05-22 14:03 ` jan.de.kruyf
2015-05-22 15:21 ` David Botton
2015-05-22 15:23 ` jan.de.kruyf
2015-05-22 15:31 ` Bob Duff
2015-05-22 15:48 ` jan.de.kruyf
2015-05-22 14:25 ` G.B.
2015-05-22 15:04 ` Bill White
2015-05-22 15:28 ` Bob Duff
2015-05-22 17:46 ` Simon Clubley
2015-05-22 18:16 ` jan.de.kruyf
2015-05-22 19:01 ` Simon Wright
2015-05-22 19:41 ` jan.de.kruyf
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox