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


Groups > comp.lang.c > #76035

Re: Objective C

Path csiph.com!eternal-september.org!feeder.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail
From Keith Thompson <kst-u@mib.org>
Newsgroups comp.lang.c
Subject Re: Objective C
Date Sat, 14 Nov 2015 14:15:58 -0800
Organization None to speak of
Lines 51
Message-ID <ln1tbsns69.fsf@kst-u.example.com> (permalink)
References <829a44d6-a605-4d49-87d0-04fa9d2a2a0a@googlegroups.com> <n1t9ra$afb$1@dont-email.me> <3f7e3553-b5b3-45a7-9a3e-d2b18c7268a4@googlegroups.com> <2e08fc7d-3253-404c-b04f-b624c3550c8f@googlegroups.com> <lnlha0nxd2.fsf@kst-u.example.com> <663e513b-b739-4e17-a175-642a3bd49283@googlegroups.com> <ln6114nv2q.fsf@kst-u.example.com> <49e74554-a5a2-4441-9676-2e59118b1079@googlegroups.com>
Mime-Version 1.0
Content-Type text/plain; charset=us-ascii
Injection-Info mx02.eternal-september.org; posting-host="945944de09706c9b4e29b53c9d2efdc2"; logging-data="6398"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Kz3Uzi+KG0791+5DDdoc0"
User-Agent Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)
Cancel-Lock sha1:VZ+hS+TDqe/BFsGqCO3eCu0iRWM= sha1:97m8PIXQH9lAZL2QqQ4aGwNmsnw=
Xref csiph.com comp.lang.c:76035

Show key headers only | View raw


Malcolm McLean <malcolm.mclean5@btinternet.com> writes:
> On Saturday, November 14, 2015 at 9:13:24 PM UTC, Keith Thompson wrote:
>> Malcolm McLean <malcolm.mclean5@btinternet.com> writes:
>> > On Saturday, November 14, 2015 at 8:24:01 PM UTC, Keith Thompson wrote:
>> >> These restrictions become relevant only when you write code that treats
>> >> an object of one type as if it were of a different type, something that
>> >> a novice C programmer can safely ignore.
>> >> 
>> > Though if you say there is a complete ban on conversion from one
>> > type to another, that does raise the question of how to output 
>> > a floating point number in human-readable form.
>> 
>> What???
>> 
>> Where in what I wrote did I imply a complete ban on conversion from one
>> type to another?
>> 
> How do you implement the casts if, at some level, you don't treat an 
> object of one type as though it were an object of a different type? 
> Surely, somewhere and somehow, there has to be a re-interpretation of 
> bits?

It seems likely I'm misunderstanding your point.

A conversion from float to int, for example, can be done either
explicitly with a cast, or implicitly via an implicit conversion.  This
does not treat a float object as if it were an int object.  As far as a
C programmer is concerned, the conversion just works (it's a fundamental
feature of the language); it doesn't require any reintrepretation, and
you don't have to care how float is represented.  And it's not affected
by the effective type rules (or by what are sometimes called strict
aliasing rules).

Output of a floating-point number in human-readable form isn't even a
"conversion" in that sense.  It could be done entirely using type-safe
arithmetic operations -- or it might involve some type conversions, none
of which require interpreting an object as if it were of a different
type.

Reinterpreting the representation of an object of one type as if it were
of another type is a completely different operation.  It can be done via
a union, using pointer tricks, using memcpy, etc., and it can have
undefined behavior if the effective type rules (N1570 6.5p6-7) are
violated.


-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

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


Thread

Objective C Alla _ <modelling.data@gmail.com> - 2015-11-10 09:10 -0800
  Re: Objective C "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-11-10 09:16 -0800
  Re: Objective C Richard Heathfield <rjh@cpax.org.uk> - 2015-11-10 17:17 +0000
  Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-10 09:32 -0800
    Re: Objective C Mark Storkamp <mstorkamp@yahoo.com> - 2015-11-10 11:38 -0600
  Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-10 12:36 -0500
    Re: Objective C Alla _ <modelling.data@gmail.com> - 2015-11-10 11:15 -0800
      Re: Objective C Richard Heathfield <rjh@cpax.org.uk> - 2015-11-10 21:51 +0000
        Re: Objective C Alla _ <modelling.data@gmail.com> - 2015-11-10 23:13 -0800
      Re: Objective C supercat@casperkitty.com - 2015-11-13 16:01 -0800
        Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-14 01:07 +0000
          Re: Objective C supercat@casperkitty.com - 2015-11-14 06:26 -0800
            Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-14 22:22 +0000
              Re: Objective C supercat@casperkitty.com - 2015-11-14 15:46 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-15 01:47 +0000
                Re: Objective C BartC <bc@freeuk.com> - 2015-11-15 10:43 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-15 13:19 -0800
            Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 15:43 -0800
            Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-15 23:50 +0100
              Re: Objective C gazelle@shell.xmission.com (Kenny McCormack) - 2015-11-16 00:05 +0000
              Re: Objective C supercat@casperkitty.com - 2015-11-15 19:10 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-16 09:11 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-16 11:57 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-16 20:38 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-16 13:20 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-16 22:28 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-16 15:33 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-16 15:56 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-17 01:43 +0000
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-17 01:21 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-16 18:11 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-16 20:12 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-19 00:59 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-18 22:46 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-19 14:25 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-19 07:58 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-19 22:13 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-19 15:29 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 08:44 -0800
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-17 01:26 +0000
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-16 21:48 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-16 20:27 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-17 13:58 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-17 12:28 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-18 13:00 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-18 12:31 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-18 16:43 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-18 15:57 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-19 19:09 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-19 19:05 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-20 15:00 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-20 15:30 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 17:11 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-22 15:53 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-23 13:51 -0600
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-24 12:00 +0000
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-17 10:26 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-17 06:20 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-17 16:41 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-17 12:08 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-17 16:27 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-17 14:55 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-18 13:59 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-18 13:06 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-24 14:24 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-24 15:11 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-26 17:02 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-27 07:26 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-18 21:56 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 02:17 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-22 07:16 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-26 17:11 -0600
                Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-22 19:09 +0000
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-17 23:28 -0600
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-18 15:33 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-18 23:06 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-19 09:12 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-19 09:25 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-19 21:06 +0100
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-20 13:49 -0800
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-21 05:01 -0600
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-21 05:09 -0600
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-21 03:31 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-21 17:43 -0600
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-21 16:00 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 01:12 -0600
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-27 16:42 +0000
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-27 12:38 -0500
                Re: Objective C supercat@casperkitty.com - 2015-11-27 11:09 -0800
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-21 19:06 -0500
                Re: Objective C supercat@casperkitty.com - 2015-11-21 17:00 -0800
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-22 14:44 +0000
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 01:55 -0600
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-22 00:03 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-22 10:18 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 03:21 -0800
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-22 10:53 -0500
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 20:28 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-22 18:52 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-23 11:58 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-23 15:24 -0800
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-23 09:46 -0500
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-23 08:13 -0800
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-23 12:04 -0500
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-23 11:52 -0600
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 16:05 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-24 09:09 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-12-08 08:48 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-12-08 10:40 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-12-09 12:34 -0800
                Re: Objective C supercat@casperkitty.com - 2015-12-08 10:50 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-12-09 12:42 -0800
                Re: Objective C supercat@casperkitty.com - 2015-12-09 13:38 -0800
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-12-10 19:54 +0000
                Re: Objective C David Thompson <dave.thompson2@verizon.net> - 2015-12-06 08:02 -0500
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-22 14:36 -0800
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-23 00:41 -0600
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 07:39 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-22 14:23 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-17 10:24 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-18 15:40 +0100
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-20 16:02 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-21 15:53 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-21 08:58 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-22 22:14 +0100
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 03:39 -0800
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-23 13:24 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-26 09:39 -0800
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-26 13:16 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-26 12:25 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 14:34 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-26 12:39 -0800
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-27 16:43 +0000
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-27 09:29 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 14:18 -0800
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-23 22:35 +0000
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-23 17:40 -0500
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-24 05:35 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-25 12:15 -0800
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-25 22:49 +0000
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-27 16:44 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 14:03 -0800
                Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-29 09:29 +0000
                Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-22 19:01 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 07:31 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-23 07:43 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-23 08:17 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-23 17:34 +0100
                Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-23 22:02 +0000
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-24 10:12 +0100
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 08:39 -0800
          Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-14 18:24 +0000
        Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 12:23 -0800
          Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-14 12:36 -0800
            Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 13:13 -0800
              Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-14 14:04 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 14:15 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-14 14:29 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 15:39 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-14 16:37 -0800
                Re: Objective C Ian Collins <ian-news@hotmail.com> - 2015-11-15 13:46 +1300
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-15 02:06 +0000
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-15 03:25 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-15 12:56 +0000
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-15 07:53 -0600
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-15 07:19 -0600
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-15 13:29 +0000
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-15 10:56 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-15 14:35 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-15 16:52 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-15 19:49 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-16 11:02 +0000
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-16 10:36 -0800
                Re: Objective C David Thompson <dave.thompson2@verizon.net> - 2015-12-06 08:03 -0500
                Re: Objective C Melzzzzz <mel@zzzzz.com> - 2015-11-16 02:01 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-15 19:34 -0800
                Re: Objective C Chad <cdalten@gmail.com> - 2015-11-15 19:54 -0800
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-17 22:36 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-17 15:27 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-17 21:15 -0800
          Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-14 22:08 +0000
      Re: Objective C fir <profesor.fir@gmail.com> - 2015-11-27 14:36 -0800
  Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-10 19:03 +0100
    Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-10 10:50 -0800

csiph-web