Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #4662

Re: Types in C

Path csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail
From Uncle Steve <stevet810@gmail.com>
Newsgroups comp.lang.c
Subject Re: Types in C
Date Mon, 23 May 2011 23:56:32 -0400
Organization Friends of the Galactic Collective
Lines 72
Message-ID <3f20bcd1c8b23d8-db1ae@gmail.com> (permalink)
References <lnaaed2pwu.fsf@nuthaus.mib.org> <slrnitldk4.tio.usenet-nospam@guild.seebs.net> <43d4ef5f7d2b0f9-0f635@gmail.com> <slrnitlm2t.131i.usenet-nospam@guild.seebs.net> <b4946f705a2a1ad-881ab@gmail.com> <slrnitlnoa.14m7.usenet-nospam@guild.seebs.net> <848fd4a481072a3-7a4d3@gmail.com> <slrnitlt2f.19ga.usenet-nospam@guild.seebs.net> <5e3bc1901a4e1d6-bdea9@gmail.com> <slrnitm1l4.1hcs.usenet-nospam@guild.seebs.net>
Mime-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Transfer-Encoding 8bit
Injection-Info mx04.eternal-september.org; posting-host="job9yP/rmK/fxQbJrcqEcA"; logging-data="20727"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18EPYM0E93/1dIgdT37O5R5"
User-Agent nn 6.7.3
Content-Length 3075
Cancel-Lock sha1:l87rj5FMLi6cb0xP+ZepEsivDmw=
Xref x330-a1.tempe.blueboxinc.net comp.lang.c:4662

Show key headers only | View raw


On Tue, May 24, 2011 at 01:58:03AM +0000, Seebs wrote:
> On 2011-05-24, Uncle Steve <stevet810@gmail.com> wrote:
> > On Mon, May 23, 2011 at 11:57:11PM +0000, Seebs wrote:
> >> Don't know the size.  Know the *minimum* size.  You don't actually need
> >> to know whether something is 32 bits, you just need to know that it's at
> >> least big enough to hold some particular value.  For all you know you're
> >> getting a 64-bit type because that's what's fast on this hardware.
> 
> > If I define a variable as a 32-bit integer, by definition I know what
> > its range of values are.  If I try to exceed that range, it is
> > programmer error.  If I port my code to a different platform,
> > the typedefs for those types will get made so they are consisted with
> > the x86 port, if possible.  I don't see how that can be bad.
> 
> It can be bad because you might end up on a machine where  32-bit types
> are intrinsically slower than 64-bit types, so by mandating that ONLY
> 32 bits be used, you're slowing the program down.

I suppose it's possible, but that seems a bit like putting the cart
before the horse.  If I say "do not blaspheme" because it might
piss-off God, I am presupposing the existence of God, which could very
well be false.  You are presupposing that a hardware manufacturer is
going to build a CPU with those characteristics.  How likely is that?
 
> > I think platform specific code will (almost?) always be quicker than
> > generalized code that compiles and runs on multiple architectures
> > unmodified.
> 
> Sometimes!
> 
> > I think you're going to have to show how your logic
> > works on this point.
> 
> See above.  Imagine that you have something that you know only needs to
> be 16 bits, so you specify i16 for it.  You have an array of them.  You're
> on a machine where access on anything other than 64-bit boundaries adds
> noticeable latency.  Poof!

Well now.  I think I said (or implied) that I was attempting to avoid
constructs that break when assumptions about type sizes are wrong.
You seem to be saying that program correctness is subordinate to
performance in this instance.  I beg to differ.
 
> This kind of thing really does happen.  There's a reason C gives minimum
> ranges for the basic types.

I suppose it does, but I am not going to assume something for which
there is no supporting evidence, in relation to this particular topic.
 
> Machine-specific code which does something that's stupid on a particular
> machine is not faster than portable code which lets the compiler pick
> something smart.

> In general, the vast majority of code does not gain any performance from
> trying to be more machine-specific, and the cases where it hurts, it hurts
> BADLY.

Exploding software hurts too.  At any rate, I'm not being
machine-specific, I am attempting to be type-specific within an
arbitrary algorithm across multiple platforms.  Those are two
very different approaches.



Regards,

Uncle Steve

-- 
Should a professional politician be charged with molestation if he
kisses babies while attending political rallies?

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Types in C jacob navia <jacob@spamsink.net> - 2011-05-22 21:29 +0200
  Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-22 12:48 -0700
  Re: Types in C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2011-05-22 23:03 +0100
    Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-23 10:35 +0200
      Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-23 08:40 -0700
        Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 17:19 +0000
          Re: Types in C John Gordon <gordon@panix.com> - 2011-05-23 17:54 +0000
            Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-23 11:33 -0700
              Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-23 11:44 -0700
            Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 19:08 +0000
          Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-23 20:50 +0200
            Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-23 12:11 -0700
              Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 19:45 +0000
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-23 13:03 -0700
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-23 22:25 +0200
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-23 14:38 -0700
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-23 23:45 +0200
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 22:02 +0000
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-24 00:10 +0200
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-23 22:12 +0200
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-23 13:27 -0700
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-23 22:33 +0200
                Re: Types in C Martin Ambuhl <mambuhl@earthlink.net> - 2011-05-24 03:17 -0400
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-24 10:55 +0200
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 09:29 +1200
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-23 23:42 +0200
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 09:51 +1200
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-24 00:04 +0200
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 10:57 +1200
                Re: Types in C David Thompson <dave.thompson2@verizon.net> - 2011-06-01 16:33 -0400
                Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-23 19:33 -0500
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-24 08:27 -0700
                Re: Types in C Tim Rentsch <txr@alumni.caltech.edu> - 2011-05-31 00:40 -0700
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-31 11:32 +0200
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-31 11:30 -0700
                Re: Types in C Tim Rentsch <txr@alumni.caltech.edu> - 2011-06-01 01:23 -0700
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 16:51 -0400
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 09:25 +1200
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-23 23:40 +0200
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-24 08:36 -0700
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 17:53 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 22:24 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 19:23 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 23:57 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 21:22 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-24 03:46 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 00:24 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-24 04:44 +0000
                Re: Types in C pete <pfiland@mindspring.com> - 2011-05-24 07:46 -0400
                Re: Types in C James Kuyper <jameskuyper@verizon.net> - 2011-05-24 07:48 -0400
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 10:35 +1200
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 22:38 +0000
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 10:53 +1200
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 23:17 +0000
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 11:24 +1200
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 23:39 +0000
                Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-24 11:23 +0200
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-24 08:46 -0700
                Re: Types in C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2011-05-24 09:14 -0700
                Re: Types in C Michael Press <rubrum@pacbell.net> - 2011-05-28 21:50 -0700
                Re: Types in C "io_x" <a@b.c.invalid> - 2011-06-07 19:50 +0200
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 19:33 -0400
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 12:03 +1200
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 21:27 -0400
                Re: Types in C Ian Collins <ian-news@hotmail.com> - 2011-05-24 13:47 +1200
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 23:45 -0400
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-24 00:07 -0700
                Re: Types in C James Kuyper <jameskuyper@verizon.net> - 2011-05-24 08:05 -0400
                Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-23 19:54 -0500
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 21:03 -0400
                Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-23 22:12 -0500
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 00:03 -0400
                Re: Types in C pete <pfiland@mindspring.com> - 2011-05-24 00:19 -0400
                Re: Types in C pete <pfiland@mindspring.com> - 2011-05-24 00:20 -0400
                Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-24 00:46 -0500
                Re: Types in C pete <pfiland@mindspring.com> - 2011-05-24 07:36 -0400
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 10:58 -0400
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-24 09:40 -0700
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 21:36 -0400
                Re: Types in C David Thompson <dave.thompson2@verizon.net> - 2011-06-01 16:33 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-24 16:50 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 21:10 -0400
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-24 18:19 -0700
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 21:42 -0400
                Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-24 23:47 -0500
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-25 10:13 -0400
                Re: Types in C Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2011-05-24 22:19 -0600
                Re: Types in C Dr Nick <3-nospam@temporary-address.org.uk> - 2011-05-25 07:04 +0100
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-25 08:53 -0700
                Re: Types in C Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2011-05-25 10:11 -0600
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-24 09:02 -0700
                Re: Types in C James Kuyper <jameskuyper@verizon.net> - 2011-05-24 07:37 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 22:02 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 18:15 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 22:25 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 19:39 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-23 23:57 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 21:10 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-24 01:58 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-23 23:56 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-24 04:32 +0000
                Re: Types in C "BartC" <bc@freeuk.com> - 2011-05-25 01:29 +0100
                Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-23 22:20 -0500
                Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-23 22:42 -0500
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 00:07 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-24 04:44 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 10:24 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-24 16:50 +0000
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 21:16 -0400
                Re: Types in C Seebs <usenet-nospam@seebs.net> - 2011-05-25 03:36 +0000
                Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-24 01:26 -0500
                Re: Types in C Uncle Steve <stevet810@gmail.com> - 2011-05-24 11:04 -0400
                Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-24 09:06 -0700
            Re: Types in C David Thompson <dave.thompson2@verizon.net> - 2011-06-01 16:33 -0400
  Re: Types in C Marcin Grzegorczyk <mgrzegor@poczta.onet.pl> - 2011-05-30 22:42 +0200
    Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-30 17:45 -0500
      Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-05-31 08:47 -0700
        Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-31 13:54 -0400
    Re: Types in C jacob navia <jacob@spamsink.net> - 2011-05-31 00:16 +0200
      Re: Types in C Shao Miller <sha0.miller@gmail.com> - 2011-05-30 18:30 -0500
      Re: Types in C Marcin Grzegorczyk <mgrzegor@poczta.onet.pl> - 2011-06-02 22:44 +0200
        Re: Types in C jacob navia <jacob@spamsink.net> - 2011-06-02 22:49 +0200
          Re: Types in C Keith Thompson <kst-u@mib.org> - 2011-06-02 15:26 -0700

csiph-web