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


Groups > comp.lang.c > #20055 > unrolled thread

How would you design C's replacement?

Started byRui Maciel <rui.maciel@gmail.com>
First post2012-04-29 17:17 +0100
Last post2012-05-03 12:37 -0400
Articles 20 on this page of 253 — 38 participants

Back to article view | Back to comp.lang.c


Contents

  How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-04-29 17:17 +0100
    Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-04-29 18:44 +0100
      Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-04-29 22:20 +0100
      Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-29 15:32 -0700
        Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-04-30 00:37 +0100
          Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-29 18:30 -0700
            Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-04-30 13:43 +1200
            Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-04-29 23:45 -0400
              Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-29 22:12 -0700
            Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-04-30 13:06 +0100
              Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-30 08:36 -0700
        Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 00:17 -0700
          Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-01 01:05 -0700
          Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-01 07:36 -0400
          Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 13:39 +0100
          Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-01 23:06 +0100
            Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 18:11 -0700
      Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-04-30 21:36 +0100
        Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-01 00:24 +0100
          Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-04-30 17:08 -0700
            Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-30 19:15 -0700
          Re: How would you design C's replacement? Kaz Kylheku <kaz@kylheku.com> - 2012-05-01 03:06 +0000
            Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-30 21:18 -0700
            Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-01 12:14 +0100
          Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-01 16:53 +1200
            Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-30 22:17 -0700
              Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-01 17:24 +1200
                Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-30 22:44 -0700
            Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-01 12:18 +0100
    Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-04-29 11:10 -0700
    Re: How would you design C's replacement? Kaz Kylheku <kaz@kylheku.com> - 2012-04-29 18:27 +0000
      Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-04-30 13:54 +0100
    Re: How would you design C's replacement? "io_x" <a@b.c.invalid> - 2012-04-29 22:07 +0200
      Re: How would you design C's replacement? "io_x" <a@b.c.invalid> - 2012-04-29 22:23 +0200
        Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-04-30 00:41 -0700
          Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-04-30 07:30 -0400
            Re: How would you design C's replacement? "io_x" <a@b.c.invalid> - 2012-04-30 16:29 +0200
      Re: How would you design C's replacement? "io_x" <a@b.c.invalid> - 2012-04-29 22:26 +0200
      Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-04-29 21:27 +0100
        Re: How would you design C's replacement? "io_x" <a@b.c.invalid> - 2012-04-30 08:49 +0200
      Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-04-30 00:42 -0700
        Re: How would you design C's replacement? "io_x" <a@b.c.invalid> - 2012-04-30 19:40 +0200
          Re: How would you design C's replacement? "io_x" <a@b.c.invalid> - 2012-05-25 10:38 +0200
            Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-27 10:22 +0100
    Re: How would you design C's replacement? FireXware <none@none.invalid> - 2012-04-29 14:29 -0600
      Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-29 17:18 -0700
        Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 10:56 +0100
          Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-01 08:04 -0700
    Re: How would you design C's replacement? Mark Storkamp <mstorkamp@yahoo.com> - 2012-04-29 16:37 -0500
    Re: How would you design C's replacement? Kaz Kylheku <kaz@kylheku.com> - 2012-04-29 22:43 +0000
    Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-04-30 06:41 +0200
    Re: How would you design C's replacement? Robert Wessel <robertwessel2@yahoo.com> - 2012-04-30 01:33 -0500
      Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-04-30 07:26 -0400
        Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-04-30 13:30 +0200
      Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-01 11:44 +1200
        Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-30 22:25 -0700
          Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-01 18:23 +1200
            Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-01 06:18 -0700
        Re: How would you design C's replacement? Jorgen Grahn <grahn+nntp@snipabacken.se> - 2012-05-02 20:25 +0000
        Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-03 01:10 -0700
          Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-03 20:34 +1200
    Re: How would you design C's replacement? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-04-30 01:01 -0700
      Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-04-30 10:08 +0200
        Re: How would you design C's replacement? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-04-30 08:22 -0700
          Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-04-30 12:09 -0400
            Re: How would you design C's replacement? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-05-01 00:23 -0700
              Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-03 01:40 -0700
            Re: How would you design C's replacement? Jorgen Grahn <grahn+nntp@snipabacken.se> - 2012-05-02 20:15 +0000
          Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-04-30 17:17 +0100
            Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-04-30 12:44 -0400
              Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-04-30 16:28 -0700
                Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-04-30 23:50 -0400
            Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-30 13:52 -0700
          Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 13:44 +0100
            Re: How would you design C's replacement? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-05-01 08:34 -0700
      Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-04-30 21:22 +0100
      Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-03 01:14 -0700
        Re: How would you design C's replacement? Kenneth Brody <kenbrody@spamcop.net> - 2012-05-03 12:35 -0400
        Re: How would you design C's replacement? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-05-04 00:44 -0700
    Re: How would you design C's replacement? Leo Havmøller <rtxleh@nospam.nospam> - 2012-04-30 13:39 +0200
      Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 11:15 +0100
        Re: How would you design C's replacement? tom st denis <tom@iahu.ca> - 2012-05-01 06:15 -0700
    Re: How would you design C's replacement? Michael Angelo Ravera <maravera@prodigy.net> - 2012-04-30 12:11 -0700
      Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-04-30 21:29 +0100
        Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-04-30 16:43 -0700
          Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 10:31 +0100
            Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 03:11 -0700
              Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 12:32 +0100
                Re: How would you design C's replacement? tom st denis <tom@iahu.ca> - 2012-05-01 06:06 -0700
                  Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 14:11 +0100
                    Re: How would you design C's replacement? tom st denis <tom@iahu.ca> - 2012-05-01 06:29 -0700
                    Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 13:24 -0700
                      Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 16:22 -0700
                Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-01 06:44 -0700
                Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 13:22 -0700
                  Re: How would you design C's replacement? jgk@panix.com (Joe keane) - 2012-05-02 21:33 +0000
                    Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-02 17:59 -0700
                    Re: How would you design C's replacement? Robert Wessel <robertwessel2@yahoo.com> - 2012-05-02 22:16 -0500
                  Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-03 10:13 +0100
                    Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-03 13:05 -0700
            Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-01 23:36 +0100
              Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-03 02:40 -0700
          Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-02 01:37 -0700
            Re: How would you design C's replacement? "io_x" <a@b.c.invalid> - 2012-05-02 16:41 +0200
              Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-03 02:54 -0700
              Re: How would you design C's replacement? Kenneth Brody <kenbrody@spamcop.net> - 2012-05-03 12:18 -0400
        Re: How would you design C's replacement? 88888 Dihedral <dihedral88888@googlemail.com> - 2012-05-02 20:27 -0700
      Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-02 01:22 -0700
        Re: How would you design C's replacement? Michael Angelo Ravera <maravera@prodigy.net> - 2012-05-04 00:41 -0700
          Re: How would you design C's replacement? Ike Naar <ike@iceland.freeshell.org> - 2012-05-04 08:41 +0000
            Re: How would you design C's replacement? Michael Angelo Ravera <maravera@prodigy.net> - 2012-05-07 01:11 -0700
              Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-07 07:18 -0400
                Re: How would you design C's replacement? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-05-07 05:41 -0700
                  Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-07 09:24 -0400
                  Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-05-07 09:31 -0700
                    Re: How would you design C's replacement? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-05-10 15:37 -0700
          Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-04 08:16 -0700
          Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-05-04 09:49 -0700
    Re: How would you design C's replacement? lawrence.jones@siemens.com - 2012-04-30 14:25 -0400
      Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-04-30 22:19 +0200
        Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-04-30 14:04 -0700
          Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-05-01 00:33 +0200
            Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-04-30 15:43 -0700
              Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 10:17 +0100
          Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 10:15 +0100
            Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-05-01 07:12 -0700
          Re: How would you design C's replacement? lawrence.jones@siemens.com - 2012-05-01 10:41 -0400
          Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-01 17:39 +0100
            Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-01 12:46 -0400
        Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-04-30 21:41 -0700
        Re: How would you design C's replacement? gwowen <gwowen@gmail.com> - 2012-05-01 00:22 -0700
        Re: How would you design C's replacement? Kenneth Brody <kenbrody@spamcop.net> - 2012-05-01 15:53 -0400
        Re: How would you design C's replacement? Quentin Pope <qp19433@hotmail.NOSPAM.com> - 2012-05-09 21:06 +0000
          Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-05-10 00:32 +0200
            Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-10 10:35 +1200
          Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-09 16:18 -0700
            Re: How would you design C's replacement? gazelle@shell.xmission.com (Kenny McCormack) - 2012-05-10 02:45 +0000
              Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-10 16:18 +0100
                Re: How would you design C's replacement? Robert Wessel <robertwessel2@yahoo.com> - 2012-05-11 03:21 -0500
                  Re: How would you design C's replacement? gazelle@shell.xmission.com (Kenny McCormack) - 2012-05-11 15:55 +0000
                    Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-13 17:39 +0100
                      Re: How would you design C's replacement? 88888 Dihedral <dihedral88888@googlemail.com> - 2012-05-14 00:08 -0700
                    Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-13 21:24 +0100
                      Re: How would you design C's replacement? Marco <prenom_nomus@yahoo.com> - 2012-05-20 06:50 -0700
              Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-10 00:08 -0700
              Re: How would you design C's replacement? gwowen <gwowen@gmail.com> - 2012-05-10 04:04 -0700
            Re: How would you design C's replacement? Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-10 10:38 -0700
              Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-05-10 11:15 -0700
                Re: How would you design C's replacement? Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-11 08:36 -0700
                  Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-05-11 17:49 +0200
                    Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-05-11 09:34 -0700
                    Re: How would you design C's replacement? Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-11 09:41 -0700
                      Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-05-11 19:42 +0200
                        Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-05-11 10:50 -0700
                          Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-05-11 20:16 +0200
                            Trigraphs (was Re: How would you design C's replacement?) Kenneth Brody <kenbrody@spamcop.net> - 2012-05-14 11:49 -0400
                              Re: Trigraphs (was Re: How would you design C's replacement?) James Kuyper <jameskuyper@verizon.net> - 2012-05-14 12:21 -0400
                                Re: Trigraphs Ben Pfaff <blp@cs.stanford.edu> - 2012-05-14 09:50 -0700
                                  Re: Trigraphs James Kuyper <jameskuyper@verizon.net> - 2012-05-14 13:05 -0400
                                    Re: Trigraphs Ben Pfaff <blp@cs.stanford.edu> - 2012-05-14 10:24 -0700
                                      Re: Trigraphs Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-14 11:56 -0700
                                        Re: Trigraphs jacob navia <jacob@spamsink.net> - 2012-05-14 21:00 +0200
                                          Re: Trigraphs Robert Wessel <robertwessel2@yahoo.com> - 2012-05-14 16:37 -0500
                                            Re: Trigraphs James Kuyper <jameskuyper@verizon.net> - 2012-05-14 17:58 -0400
                                              Re: Trigraphs Keith Thompson <kst-u@mib.org> - 2012-05-14 21:05 -0700
                                                Re: Trigraphs Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-17 13:19 -0700
                                          Re: Trigraphs Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-17 13:05 -0700
                                          Re: Trigraphs jgk@panix.com (Joe keane) - 2012-05-17 22:04 +0000
                                        Re: Trigraphs Walter Banks <walter@bytecraft.com> - 2012-05-14 16:22 -0400
                                          Re: Trigraphs "BartC" <bc@freeuk.com> - 2012-05-14 22:05 +0100
                                            Re: Trigraphs Walter Banks <walter@bytecraft.com> - 2012-05-14 22:31 -0400
                                              Re: Trigraphs Ben Pfaff <blp@cs.stanford.edu> - 2012-05-14 21:17 -0700
                                          Re: Trigraphs Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-17 13:42 -0700
                                    Re: Trigraphs Keith Thompson <kst-u@mib.org> - 2012-05-14 13:33 -0700
                                      Re: Trigraphs Jens Gustedt <jens.gustedt@loria.fr> - 2012-05-14 23:02 +0200
                                        Re: Trigraphs James Kuyper <jameskuyper@verizon.net> - 2012-05-14 17:35 -0400
                        Re: How would you design C's replacement? Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-11 18:49 -0700
                      Re: How would you design C's replacement? Gareth Owen <gwowen@gmail.com> - 2012-05-11 18:49 +0100
                        Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-05-11 20:14 +0200
                          Re: How would you design C's replacement? Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-11 18:56 -0700
              Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-10 11:31 -0700
                Re: How would you design C's replacement? Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-11 08:38 -0700
                  Re: How would you design C's replacement? Ben Pfaff <blp@cs.stanford.edu> - 2012-05-11 09:36 -0700
                    Re: How would you design C's replacement? Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-11 19:12 -0700
                      Re: How would you design C's replacement? Kenneth Brody <kenbrody@spamcop.net> - 2012-05-14 11:56 -0400
                        Re: How would you design C's replacement? Tim Rentsch <txr@alumni.caltech.edu> - 2012-05-14 11:34 -0700
        Re: How would you design C's replacement? jgk@panix.com (Joe keane) - 2012-05-10 20:05 +0000
          Re: How would you design C's replacement? "J. J. Farrell" <jjf@bcs.org.uk> - 2012-05-11 06:19 +0100
      Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 10:33 +0100
    Re: How would you design C's replacement? jgk@panix.com (Joe keane) - 2012-04-30 22:38 +0000
    Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-01 17:43 +1200
      Re: How would you design C's replacement? Jens Gustedt <jens.gustedt@loria.fr> - 2012-05-01 09:39 +0200
        Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-01 20:21 +1200
          Re: How would you design C's replacement? Jens Gustedt <jens.gustedt@loria.fr> - 2012-05-01 10:39 +0200
            Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-01 20:47 +1200
              Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-01 08:10 -0400
              Re: How would you design C's replacement? Jens Gustedt <jens.gustedt@loria.fr> - 2012-05-01 14:37 +0200
            Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-01 08:17 -0400
        Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-01 07:48 -0400
          Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 13:32 -0700
            Re: How would you design C's replacement? Jens Gustedt <jens.gustedt@loria.fr> - 2012-05-01 23:07 +0200
              Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-02 18:02 +1200
                Re: How would you design C's replacement? Jens Gustedt <jens.gustedt@loria.fr> - 2012-05-02 14:40 +0200
                  Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-02 10:35 -0400
                    Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-05-02 16:51 +0200
                      Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-02 11:44 -0700
                        Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-02 17:23 -0700
                        Re: How would you design C's replacement? jacob navia <jacob@spamsink.net> - 2012-05-03 12:14 +0200
                          Re: How would you design C's replacement? Jens Gustedt <jens.gustedt@loria.fr> - 2012-05-03 13:38 +0200
                      Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-03 07:28 +1200
                        Re: How would you design C's replacement? ImpalerCore <jadill33@gmail.com> - 2012-05-02 13:28 -0700
                          Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-03 18:44 +1200
                      Re: How would you design C's replacement? gwowen <gwowen@gmail.com> - 2012-05-03 00:56 -0700
                  Re: How would you design C's replacement? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-05-02 16:04 +0100
            Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-01 17:14 -0400
              Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 16:10 -0700
              Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-02 17:52 +1200
                Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-02 02:37 -0700
                Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-02 07:29 -0400
    Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-01 12:19 +0100
    Re: How would you design C's replacement? Lanarcam <lanarcam1@yahoo.fr> - 2012-05-01 18:02 +0200
      Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 13:43 -0700
        Re: How would you design C's replacement? Lanarcam <lanarcam1@yahoo.fr> - 2012-05-01 22:52 +0200
          Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-01 16:12 -0700
            Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-01 20:59 -0700
            Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-02 02:09 -0700
            Re: How would you design C's replacement? Kenneth Brody <kenbrody@spamcop.net> - 2012-05-03 12:08 -0400
              Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-03 16:05 -0700
      Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-02 02:04 -0700
        Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-02 10:36 +0100
          Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-02 07:36 -0400
            Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-02 16:21 +0100
              Re: How would you design C's replacement? Kenneth Brody <kenbrody@spamcop.net> - 2012-05-03 12:26 -0400
                Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-03 16:08 -0700
          Re: How would you design C's replacement? Rui Maciel <rui.maciel@gmail.com> - 2012-05-02 16:16 +0100
            Re: How would you design C's replacement? Dr Nick <3-nospam@temporary-address.org.uk> - 2012-05-02 19:46 +0100
            Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-02 12:12 -0700
              Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-02 20:26 +0100
                Re: How would you design C's replacement? BGB <cr88192@hotmail.com> - 2012-05-02 12:59 -0700
                Re: How would you design C's replacement? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-05-02 14:32 -0700
                Re: How would you design C's replacement? Keith Thompson <kst-u@mib.org> - 2012-05-02 17:09 -0700
                Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-03 18:45 +1200
                  Re: How would you design C's replacement? James Kuyper <jameskuyper@verizon.net> - 2012-05-03 08:13 -0400
                    Re: How would you design C's replacement? Ian Collins <ian-news@hotmail.com> - 2012-05-04 07:18 +1200
              Re: How would you design C's replacement? David Thompson <dave.thompson2@verizon.net> - 2012-05-13 00:15 -0400
            Re: How would you design C's replacement? Kenneth Brody <kenbrody@spamcop.net> - 2012-05-03 12:22 -0400
          Re: How would you design C's replacement? nick_keighley_nospam@hotmail.com - 2012-05-03 03:09 -0700
            Re: How would you design C's replacement? 88888 Dihedral <dihedral88888@googlemail.com> - 2012-05-03 03:55 -0700
            Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-03 12:45 +0100
            Re: How would you design C's replacement? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-05-03 13:15 +0100
              Re: How would you design C's replacement? "BartC" <bc@freeuk.com> - 2012-05-03 13:41 +0100
                Re: How would you design C's replacement? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-05-03 17:51 +0100
            Re: How would you design C's replacement? Kenneth Brody <kenbrody@spamcop.net> - 2012-05-03 12:37 -0400

Page 12 of 13 — ← Prev page 1 … 10 11 [12] 13  Next page →


#20176

FromLanarcam <lanarcam1@yahoo.fr>
Date2012-05-01 18:02 +0200
Message-ID<4fa00933$0$16490$426a74cc@news.free.fr>
In reply to#20055
Le 29/04/2012 18:17, Rui Maciel a écrit :
> If you were given the task to design a replacement for the C programming
> language intended to fix all its problems and shortcomings, what would you
> propopose?
>
>
My responses will probably be OT, they are the result of many years
chasing elusive and costly bugs in the domain of real time embedded
systems. My wish list:

- prevents writing at wrong memory locations by the use of wild
   pointers or out of bound array indices.

- erasing of the stack memory resulting in wild jumps.

- prevents mistaking one structure with another by the
   use of improper casts.

- overrun of integral types. The language should define
   types such as uint32_t, int16_t, etc.

- errors in comparison instructions resulting in an
   assignation, if (a = b) instead of if (a == b)

- no dangling pointers after free()

[toc] | [prev] | [next] | [standalone]


#20184

FromKeith Thompson <kst-u@mib.org>
Date2012-05-01 13:43 -0700
Message-ID<lnpqantyxy.fsf@nuthaus.mib.org>
In reply to#20176
Lanarcam <lanarcam1@yahoo.fr> writes:
> Le 29/04/2012 18:17, Rui Maciel a écrit :
>> If you were given the task to design a replacement for the C programming
>> language intended to fix all its problems and shortcomings, what would you
>> propopose?
>>
> My responses will probably be OT, they are the result of many years
> chasing elusive and costly bugs in the domain of real time embedded
> systems. My wish list:
>
> - prevents writing at wrong memory locations by the use of wild
>    pointers or out of bound array indices.
>
> - erasing of the stack memory resulting in wild jumps.

How would you change the language to prevent these?

C implementations are already *permitted* to perform bounds checking,
but most don't, since it imposes performance costs.

> - prevents mistaking one structure with another by the
>    use of improper casts.

Would you forbid cssts from one pointer type to another?

> - overrun of integral types. The language should define
>    types such as uint32_t, int16_t, etc.

It does, or rather the standard library does (<stdint.h>, <inttypes.h>).

By "overrun", do you mean "overflow"?  If so, how do int16_t and friends
address that?  What prevents me from writing

    int16_t x = 32767;
    x ++;

and what should happen if I do?

> - errors in comparison instructions resulting in an
>    assignation, if (a = b) instead of if (a == b)

Many compilers already warn about "if (a = b)".  But it can only be a
warning, since "if (a = b)" is valid code with unambiguous semantics.

If I were designing the language from scratch today, I'd probably use
":=" for assignment and "=" for comparison, but it's too late to change
it now.

One possible change would be to require parentheses when an assignment
is used as a condition, so you have to write "if ((a = b))" if that's
what you really want -- but that would break existing code.

> - no dangling pointers after free()

If I write:

    int *p0 = malloc(sizeof *p0);
    int *p1 = p0;
    /* ... */
    free(p0);

then p1 is a dangling pointer.  How would you change the language to
prevent that?

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
    Will write code for food.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

[toc] | [prev] | [next] | [standalone]


#20185

FromLanarcam <lanarcam1@yahoo.fr>
Date2012-05-01 22:52 +0200
Message-ID<4fa04d0c$0$21942$426a74cc@news.free.fr>
In reply to#20184
Le 01/05/2012 22:43, Keith Thompson a écrit :
> Lanarcam<lanarcam1@yahoo.fr>  writes:
>> Le 29/04/2012 18:17, Rui Maciel a écrit :
>>> If you were given the task to design a replacement for the C programming
>>> language intended to fix all its problems and shortcomings, what would you
>>> propopose?
>>>
>> My responses will probably be OT, they are the result of many years
>> chasing elusive and costly bugs in the domain of real time embedded
>> systems. My wish list:
>>
>> - prevents writing at wrong memory locations by the use of wild
>>     pointers or out of bound array indices.
>>
>> - erasing of the stack memory resulting in wild jumps.
>
> How would you change the language to prevent these?

I have no idea, it's a wish list, you are the (potential)
writer. If you say it is impossible I accept that.
>

[toc] | [prev] | [next] | [standalone]


#20199

FromKeith Thompson <kst-u@mib.org>
Date2012-05-01 16:12 -0700
Message-ID<lnd36nts0a.fsf@nuthaus.mib.org>
In reply to#20185
Lanarcam <lanarcam1@yahoo.fr> writes:
> Le 01/05/2012 22:43, Keith Thompson a écrit :
>> Lanarcam<lanarcam1@yahoo.fr>  writes:
>>> Le 29/04/2012 18:17, Rui Maciel a écrit :
>>>> If you were given the task to design a replacement for the C programming
>>>> language intended to fix all its problems and shortcomings, what would you
>>>> propopose?
>>>>
>>> My responses will probably be OT, they are the result of many years
>>> chasing elusive and costly bugs in the domain of real time embedded
>>> systems. My wish list:
>>>
>>> - prevents writing at wrong memory locations by the use of wild
>>>     pointers or out of bound array indices.
>>>
>>> - erasing of the stack memory resulting in wild jumps.
>>
>> How would you change the language to prevent these?
>
> I have no idea, it's a wish list, you are the (potential)
> writer. If you say it is impossible I accept that.

I'm not saying it's impossible.  There are plenty of languages that
avoid wild pointers, typically by not having pointers, or at least by
not having pointer arithmetic.  But I don't think any such language
could reasonably be called "C", or even C-like.

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
    Will write code for food.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

[toc] | [prev] | [next] | [standalone]


#20204

FromBGB <cr88192@hotmail.com>
Date2012-05-01 20:59 -0700
Message-ID<jnqbju$r8l$1@news.albasani.net>
In reply to#20199
On 5/1/2012 4:12 PM, Keith Thompson wrote:
> Lanarcam<lanarcam1@yahoo.fr>  writes:
>> Le 01/05/2012 22:43, Keith Thompson a écrit :
>>> Lanarcam<lanarcam1@yahoo.fr>   writes:
>>>> Le 29/04/2012 18:17, Rui Maciel a écrit :
>>>>> If you were given the task to design a replacement for the C programming
>>>>> language intended to fix all its problems and shortcomings, what would you
>>>>> propopose?
>>>>>
>>>> My responses will probably be OT, they are the result of many years
>>>> chasing elusive and costly bugs in the domain of real time embedded
>>>> systems. My wish list:
>>>>
>>>> - prevents writing at wrong memory locations by the use of wild
>>>>      pointers or out of bound array indices.
>>>>
>>>> - erasing of the stack memory resulting in wild jumps.
>>>
>>> How would you change the language to prevent these?
>>
>> I have no idea, it's a wish list, you are the (potential)
>> writer. If you say it is impossible I accept that.
>
> I'm not saying it's impossible.  There are plenty of languages that
> avoid wild pointers, typically by not having pointers, or at least by
> not having pointer arithmetic.  But I don't think any such language
> could reasonably be called "C", or even C-like.
>

a trick used in my own language / VM is having support for "bounded" 
pointers, where the VM basically keeps track of the underlying memory 
object, and will trap if a pointer access goes out of range (as a result 
of either arithmetic or indexing).

granted, however, this is not free.

currently, this is only done for things like arrays and strings, whereas 
more explicit pointers don't do this.

[toc] | [prev] | [next] | [standalone]


#20212

Fromnick_keighley_nospam@hotmail.com
Date2012-05-02 02:09 -0700
Message-ID<31760701.3617.1335949792814.JavaMail.geo-discussion-forums@vbq5>
In reply to#20199
On Wednesday, May 2, 2012 12:12:53 AM UTC+1, Keith Thompson wrote:
> Lanarcam <lanarcam1@yahoo.fr> writes:
> > Le 01/05/2012 22:43, Keith Thompson a écrit :
> >> Lanarcam<lanarcam1@yahoo.fr>  writes:
> >>> Le 29/04/2012 18:17, Rui Maciel a écrit :
> >>>> If you were given the task to design a replacement for the C programming
> >>>> language intended to fix all its problems and shortcomings, what would you
> >>>> propopose?
> >>>>
> >>> My responses will probably be OT, they are the result of many years
> >>> chasing elusive and costly bugs in the domain of real time embedded
> >>> systems. My wish list:
> >>>
> >>> - prevents writing at wrong memory locations by the use of wild
> >>>     pointers or out of bound array indices.
> >>>
> >>> - erasing of the stack memory resulting in wild jumps.
> >>
> >> How would you change the language to prevent these?
> >
> > I have no idea, it's a wish list, you are the (potential)
> > writer. If you say it is impossible I accept that.
> 
> I'm not saying it's impossible.  There are plenty of languages that
> avoid wild pointers, typically by not having pointers, or at least by
> not having pointer arithmetic.  But I don't think any such language
> could reasonably be called "C", or even C-like.

and embedded people often want to do this sort of thing

   volatile unsigned char *sio_reg = (unsigned char *)0x8010;

   *sio_reg = 0xfe;
   *sio_reg = 0x10;
   *sio_reg = 0x10;

   sio_reg++;
   *sio_reg = 'h';
   *sio_reg = 'i';
   *sio_reg = '!';

[toc] | [prev] | [next] | [standalone]


#20293

FromKenneth Brody <kenbrody@spamcop.net>
Date2012-05-03 12:08 -0400
Message-ID<3JqdnSFwheQNMD_SnZ2dnUVZ_o-dnZ2d@bestweb.net>
In reply to#20199
On 5/1/2012 7:12 PM, Keith Thompson wrote:
> Lanarcam<lanarcam1@yahoo.fr>  writes:
>> Le 01/05/2012 22:43, Keith Thompson a écrit :
>>> Lanarcam<lanarcam1@yahoo.fr>   writes:
>>>> Le 29/04/2012 18:17, Rui Maciel a écrit :
>>>>> If you were given the task to design a replacement for the C programming
>>>>> language intended to fix all its problems and shortcomings, what would you
>>>>> propopose?
>>>>>
>>>> My responses will probably be OT, they are the result of many years
>>>> chasing elusive and costly bugs in the domain of real time embedded
>>>> systems. My wish list:
>>>>
>>>> - prevents writing at wrong memory locations by the use of wild
>>>>      pointers or out of bound array indices.
>>>>
>>>> - erasing of the stack memory resulting in wild jumps.
>>>
>>> How would you change the language to prevent these?
>>
>> I have no idea, it's a wish list, you are the (potential)
>> writer. If you say it is impossible I accept that.
>
> I'm not saying it's impossible.  There are plenty of languages that
> avoid wild pointers, typically by not having pointers, or at least by
> not having pointer arithmetic.  But I don't think any such language
> could reasonably be called "C", or even C-like.


One could also design the language such that a pointer isn't strictly an 
address (as pointers are typically implemented on most hardware).  Instead, 
a pointer could be the equivalent of:

     struct pointer
         {
         void raw * base;
         size_t size;
         void raw * address;
         };

(The "raw" keyword means the pointer is a raw address, and not this new 
"pointer" thingy.  User code would not be allowed to create such pointers.)

Then, any time pointer arithmetic is performed, bounds checking is performed 
(what happens on under/overflow is TBD) and a new pointer is created with 
the adjusted values.  (The "++", "--", "+=", an "-=" operators don't create 
a new pointer.  They just modify the current one.)

Note that the word was "possible", not "practical".

-- 
Kenneth Brody

[toc] | [prev] | [next] | [standalone]


#20365

FromBGB <cr88192@hotmail.com>
Date2012-05-03 16:05 -0700
Message-ID<jnv336$52l$1@news.albasani.net>
In reply to#20293
On 5/3/2012 9:08 AM, Kenneth Brody wrote:
> On 5/1/2012 7:12 PM, Keith Thompson wrote:
>> Lanarcam<lanarcam1@yahoo.fr> writes:
>>> Le 01/05/2012 22:43, Keith Thompson a écrit :
>>>> Lanarcam<lanarcam1@yahoo.fr> writes:
>>>>> Le 29/04/2012 18:17, Rui Maciel a écrit :
>>>>>> If you were given the task to design a replacement for the C
>>>>>> programming
>>>>>> language intended to fix all its problems and shortcomings, what
>>>>>> would you
>>>>>> propopose?
>>>>>>
>>>>> My responses will probably be OT, they are the result of many years
>>>>> chasing elusive and costly bugs in the domain of real time embedded
>>>>> systems. My wish list:
>>>>>
>>>>> - prevents writing at wrong memory locations by the use of wild
>>>>> pointers or out of bound array indices.
>>>>>
>>>>> - erasing of the stack memory resulting in wild jumps.
>>>>
>>>> How would you change the language to prevent these?
>>>
>>> I have no idea, it's a wish list, you are the (potential)
>>> writer. If you say it is impossible I accept that.
>>
>> I'm not saying it's impossible. There are plenty of languages that
>> avoid wild pointers, typically by not having pointers, or at least by
>> not having pointer arithmetic. But I don't think any such language
>> could reasonably be called "C", or even C-like.
>
>
> One could also design the language such that a pointer isn't strictly an
> address (as pointers are typically implemented on most hardware).
> Instead, a pointer could be the equivalent of:
>
> struct pointer
> {
> void raw * base;
> size_t size;
> void raw * address;
> };
>
> (The "raw" keyword means the pointer is a raw address, and not this new
> "pointer" thingy. User code would not be allowed to create such pointers.)
>
> Then, any time pointer arithmetic is performed, bounds checking is
> performed (what happens on under/overflow is TBD) and a new pointer is
> created with the adjusted values. (The "++", "--", "+=", an "-="
> operators don't create a new pointer. They just modify the current one.)
>
> Note that the word was "possible", not "practical".
>

if you also add a type signature and an element size-step, then this 
isn't too far from how pointers (and arrays) are implemented for my 
script language.

actually, they are also heap-allocated dynamically-typed objects as 
well, although they still obey value-type semantics.

granted, yes, this isn't exactly the most efficient possible 
implementation, but oh well...

[toc] | [prev] | [next] | [standalone]


#20211

Fromnick_keighley_nospam@hotmail.com
Date2012-05-02 02:04 -0700
Message-ID<17512363.1665.1335949466700.JavaMail.geo-discussion-forums@vbxz8>
In reply to#20176
On Tuesday, May 1, 2012 5:02:58 PM UTC+1, Lanarcam wrote:
> Le 29/04/2012 18:17, Rui Maciel a écrit :

> > If you were given the task to design a replacement for the C programming
> > language intended to fix all its problems and shortcomings, what would you
> > propopose?
>
> My responses will probably be OT, they are the result of many years
> chasing elusive and costly bugs in the domain of real time embedded
> systems. My wish list:

I think must of these are undo-able without removing C's essential "C-ness". I think you want some sort of reasonably efficient script language running on top of a VM that enforces these sorts of limits; with the ability to plunge into C when necessary. Unfortunatly I don't know of such a thing. Forth maybe?

> - prevents writing at wrong memory locations by the use of wild
>    pointers or out of bound array indices.

who decides when a pointer is "wild"? Forbid pointer arithmatic except in critical parts of the code.

> - erasing of the stack memory resulting in wild jumps.
> 
> - prevents mistaking one structure with another by the
>    use of improper casts.

ban casting XICP

> - overrun of integral types. The language should define
>    types such as uint32_t, int16_t, etc.

puke. It does. 

> - errors in comparison instructions resulting in an
>    assignation, if (a = b) instead of if (a == b)

experienced programmers hardly ever do this. Some compilers warn about it. How would you fix it?

> - no dangling pointers after free()

you use malloc/free on an embedded system? How would you implement this? Zeroing the pointer isn't the solution...

Rewrite all your applications in Lisp.

[toc] | [prev] | [next] | [standalone]


#20213

From"BartC" <bc@freeuk.com>
Date2012-05-02 10:36 +0100
Message-ID<jnqv8e$9hf$1@dont-email.me>
In reply to#20211
<nick_keighley_nospam@hotmail.com> wrote in message 
news:17512363.1665.1335949466700.JavaMail.geo-discussion-forums@vbxz8...
> On Tuesday, May 1, 2012 5:02:58 PM UTC+1, Lanarcam wrote:

>> - errors in comparison instructions resulting in an
>>    assignation, if (a = b) instead of if (a == b)
>
> experienced programmers hardly ever do this. Some compilers warn about it. 
> How would you fix it?

That's being a little elitist. Why shouldn't anyone be able to use the 
language, for example those who have to program other languages too?

And the fix is easy: use different symbols for assignment and equality. By 
using the natural "=" symbol for equality, you won't then fall into the trap 
of using it by mistake instead of the very 1970s-looking "==".

Or use two symbols for assignment; one that returns the value of the left 
side ("="), and one which returns void (eg. ":="). This could be added to C 
today. It won't eliminate the problem, but can reduce it.

-- 
Bartc 

[toc] | [prev] | [next] | [standalone]


#20216

FromJames Kuyper <jameskuyper@verizon.net>
Date2012-05-02 07:36 -0400
Message-ID<jnr68h$eco$1@dont-email.me>
In reply to#20213
On 05/02/2012 05:36 AM, BartC wrote:
...
> And the fix is easy: use different symbols for assignment and equality. By 
> using the natural "=" symbol for equality, you won't then fall into the trap 
> of using it by mistake instead of the very 1970s-looking "==".
> 
> Or use two symbols for assignment; one that returns the value of the left 
> side ("="), and one which returns void (eg. ":="). This could be added to C 
> today. It won't eliminate the problem, but can reduce it.

At a more formal level, I've sometimes considered making assignment a
statement type, rather than an expression type. As a statement that is
not an expression, it would not return a value, and would therefore
never be confusable with equality comparisons. I almost never use the
return value from a assignment expression, so I don't see this as a
significant loss.
This is only for a new C-like language, of course; it would break too
much existing C code to make such a modification to C.
-- 
James Kuyper

[toc] | [prev] | [next] | [standalone]


#20223

FromRui Maciel <rui.maciel@gmail.com>
Date2012-05-02 16:21 +0100
Message-ID<jnrje8$qvr$1@speranza.aioe.org>
In reply to#20216
James Kuyper wrote:

> At a more formal level, I've sometimes considered making assignment a
> statement type, rather than an expression type. As a statement that is
> not an expression, it would not return a value, and would therefore
> never be confusable with equality comparisons. I almost never use the
> return value from a assignment expression, so I don't see this as a
> significant loss.
> This is only for a new C-like language, of course; it would break too
> much existing C code to make such a modification to C.

If someone really needs some hand-holding with the assignment operator, a 
macro could help.  The following macro might do the trick:

#define SET(A,B) { A = B; }


I don't believe this sort of solution will ever be popular.


Rui Maciel

[toc] | [prev] | [next] | [standalone]


#20297

FromKenneth Brody <kenbrody@spamcop.net>
Date2012-05-03 12:26 -0400
Message-ID<SPydnRVy8fk0LD_SnZ2dnUVZ_vadnZ2d@bestweb.net>
In reply to#20223
On 5/2/2012 11:21 AM, Rui Maciel wrote:
[...]
> If someone really needs some hand-holding with the assignment operator, a
> macro could help.  The following macro might do the trick:
>
> #define SET(A,B) { A = B; }
>
>
> I don't believe this sort of solution will ever be popular.

You forgot:

#define BEGIN              {
#define END                ;}
#define GETS_ASSIGNED_FROM =
#define IS_EQUAL_TO        ==

#define SET(A,B)  BEGIN A GETS_ASSIGNED_FROM B END

-- 
Kenneth Brody

[toc] | [prev] | [next] | [standalone]


#20366

FromBGB <cr88192@hotmail.com>
Date2012-05-03 16:08 -0700
Message-ID<jnv395$5gr$1@news.albasani.net>
In reply to#20297
On 5/3/2012 9:26 AM, Kenneth Brody wrote:
> On 5/2/2012 11:21 AM, Rui Maciel wrote:
> [...]
>> If someone really needs some hand-holding with the assignment operator, a
>> macro could help. The following macro might do the trick:
>>
>> #define SET(A,B) { A = B; }
>>
>>
>> I don't believe this sort of solution will ever be popular.
>
> You forgot:
>
> #define BEGIN {
> #define END ;}
> #define GETS_ASSIGNED_FROM =
> #define IS_EQUAL_TO ==
>
> #define SET(A,B) BEGIN A GETS_ASSIGNED_FROM B END
>

and thus begins "C: The Quest for COBOL"...

[toc] | [prev] | [next] | [standalone]


#20222

FromRui Maciel <rui.maciel@gmail.com>
Date2012-05-02 16:16 +0100
Message-ID<jnrj3v$q1l$1@speranza.aioe.org>
In reply to#20213
BartC wrote:

>> experienced programmers hardly ever do this. Some compilers warn about
>> it. How would you fix it?
> 
> That's being a little elitist. Why shouldn't anyone be able to use the
> language, for example those who have to program other languages too?

I believe the point was that experienced programmes hardly make the mistake 
of doing (a = b) instead of (a == b).  It's hardly elitist to say that 
experienced programmers do some errors less frequently than less experienced 
ones.


> And the fix is easy: use different symbols for assignment and equality. By
> using the natural "=" symbol for equality, you won't then fall into the
> trap of using it by mistake instead of the very 1970s-looking "==".
> 
> Or use two symbols for assignment; one that returns the value of the left
> side ("="), and one which returns void (eg. ":="). This could be added to
> C today. It won't eliminate the problem, but can reduce it.

If the problem is that people mistake the '==' token for the '=' token, if 
you introduce another token to be used as an assignment operator then not 
only the original problem isn't solved but I also suspect that it actually 
increases the odds that this sort of mistake will be made.


Rui Maciel

[toc] | [prev] | [next] | [standalone]


#20230

FromDr Nick <3-nospam@temporary-address.org.uk>
Date2012-05-02 19:46 +0100
Message-ID<87d36m4e0i.fsf@temporary-address.org.uk>
In reply to#20222
Rui Maciel <rui.maciel@gmail.com> writes:

> BartC wrote:
>
>>> experienced programmers hardly ever do this. Some compilers warn about
>>> it. How would you fix it?
>> 
>> That's being a little elitist. Why shouldn't anyone be able to use the
>> language, for example those who have to program other languages too?
>
> I believe the point was that experienced programmes hardly make the mistake 
> of doing (a = b) instead of (a == b).  It's hardly elitist to say that 
> experienced programmers do some errors less frequently than less experienced 
> ones.

I confess to doing it a couple of weeks ago.  But whether it was a
sudden thinko of just a simple typo I don't know.

I've got GCC's warning such that it told me about it.  Otherwise ...
-- 
Online waterways route planner            | http://canalplan.eu
Plan trips, see photos, check facilities  | http://canalplan.org.uk

[toc] | [prev] | [next] | [standalone]


#20231

FromBGB <cr88192@hotmail.com>
Date2012-05-02 12:12 -0700
Message-ID<jns140$8th$1@news.albasani.net>
In reply to#20222
On 5/2/2012 8:16 AM, Rui Maciel wrote:
> BartC wrote:
>
>>> experienced programmers hardly ever do this. Some compilers warn about
>>> it. How would you fix it?
>>
>> That's being a little elitist. Why shouldn't anyone be able to use the
>> language, for example those who have to program other languages too?
>
> I believe the point was that experienced programmes hardly make the mistake
> of doing (a = b) instead of (a == b).  It's hardly elitist to say that
> experienced programmers do some errors less frequently than less experienced
> ones.
>

yeah, it is rare and almost invariably due to a typing error rather than 
actually intending to type it that way. so, '==' becomes like 
second-nature or something.

far more common problems are things like:
mistyping function names;
messing up the number or types of function arguments;
accidentally doing bad type conversions;
...

in GCC there were options to make the compiler reject the code more 
readily in these cases, but annoyingly MSVC is a bit more prone to let 
it through (usually just giving warnings), without options to turn up 
the strictness.


this isn't to say that a person needs Java levels of strictness (where 
every implicit type-conversion is an error, ...), but the compiler being 
like "oh well, whatever" about implicit conversions between pointers and 
integers or similar (or between incompatible pointer types) is probably 
a bit too lax.

like, probably if the programmer just went and assigned a struct-pointer 
into an integer variable without casting it, then it was probably a 
typing error.


>
>> And the fix is easy: use different symbols for assignment and equality. By
>> using the natural "=" symbol for equality, you won't then fall into the
>> trap of using it by mistake instead of the very 1970s-looking "==".
>>
>> Or use two symbols for assignment; one that returns the value of the left
>> side ("="), and one which returns void (eg. ":="). This could be added to
>> C today. It won't eliminate the problem, but can reduce it.
>
> If the problem is that people mistake the '==' token for the '=' token, if
> you introduce another token to be used as an assignment operator then not
> only the original problem isn't solved but I also suspect that it actually
> increases the odds that this sort of mistake will be made.
>

yeah, I like = and == the way they are.
I wouldn't mind too much if the compiler give a warning (or even an 
error) if '=' were used directly in an 'if' conditional.

but, then again, it isn't really a common error.

[toc] | [prev] | [next] | [standalone]


#20232

From"BartC" <bc@freeuk.com>
Date2012-05-02 20:26 +0100
Message-ID<jns1qv$vms$1@dont-email.me>
In reply to#20231
"BGB" <cr88192@hotmail.com> wrote in message 
news:jns140$8th$1@news.albasani.net...
> On 5/2/2012 8:16 AM, Rui Maciel wrote:


>> If the problem is that people mistake the '==' token for the '=' token, 
>> if
>> you introduce another token to be used as an assignment operator then not
>> only the original problem isn't solved but I also suspect that it 
>> actually
>> increases the odds that this sort of mistake will be made.
>>
>
> yeah, I like = and == the way they are.
> I wouldn't mind too much if the compiler give a warning (or even an error) 
> if '=' were used directly in an 'if' conditional.
>
> but, then again, it isn't really a common error.

I do it all the time, when writing C code (which admittedly isn't that 
often).

The two main compilers I use don't give a warning, not with the default 
options anyway.

I write very little Python either, but the same mistake gets picked up 
there, because "=" isn't allowed inside an expression.

> yeah, I like = and == the way they are.

You get used to "=" for assignment (I spent a year writing Fortran once), 
but it doesn't change the fact that "=" would have been first choice for an 
equality operator.

-- 
Bartc 

[toc] | [prev] | [next] | [standalone]


#20235

FromBGB <cr88192@hotmail.com>
Date2012-05-02 12:59 -0700
Message-ID<jns3s4$f1d$1@news.albasani.net>
In reply to#20232
On 5/2/2012 12:26 PM, BartC wrote:
> "BGB" <cr88192@hotmail.com> wrote in message
> news:jns140$8th$1@news.albasani.net...
>> On 5/2/2012 8:16 AM, Rui Maciel wrote:
>
>
>>> If the problem is that people mistake the '==' token for the '='
>>> token, if
>>> you introduce another token to be used as an assignment operator then
>>> not
>>> only the original problem isn't solved but I also suspect that it
>>> actually
>>> increases the odds that this sort of mistake will be made.
>>>
>>
>> yeah, I like = and == the way they are.
>> I wouldn't mind too much if the compiler give a warning (or even an
>> error) if '=' were used directly in an 'if' conditional.
>>
>> but, then again, it isn't really a common error.
>
> I do it all the time, when writing C code (which admittedly isn't that
> often).
>
> The two main compilers I use don't give a warning, not with the default
> options anyway.
>
> I write very little Python either, but the same mistake gets picked up
> there, because "=" isn't allowed inside an expression.
>

presumably, it is mostly a matter of how much one gets used to the 
language. with experience, a person gets very used to using == to 
express equality, so much that it also tends to show up when writing 
about other (non-programming) topics.


>> yeah, I like = and == the way they are.
>
> You get used to "=" for assignment (I spent a year writing Fortran
> once), but it doesn't change the fact that "=" would have been first
> choice for an equality operator.
>

possibly, but I think assignments are generally more common than 
checking for equality, so it makes sense that assignment have the 
shorter operator.

otherwise, the semantics of "=" could have been made context dependent, 
but this would not necessarily have been better.

[toc] | [prev] | [next] | [standalone]


#20241

FromMalcolm McLean <malcolm.mclean5@btinternet.com>
Date2012-05-02 14:32 -0700
Message-ID<29100613.201.1335994334473.JavaMail.geo-discussion-forums@vbvx4>
In reply to#20232
בתאריך יום רביעי, 2 במאי 2012 20:26:28 UTC+1, מאת Bart:
> 
> You get used to "=" for assignment (I spent a year writing Fortran once), 
> but it doesn't change the fact that "=" would have been first choice for an 
> equality operator.
> 
= for assignment and == for equality is fine if you never use anything else. But when you've got to switch between =, <-, := and == depending on the language you happen to be using, it ends up as a nuisance.

[toc] | [prev] | [next] | [standalone]


Page 12 of 13 — ← Prev page 1 … 10 11 [12] 13  Next page →

Back to top | Article view | comp.lang.c


csiph-web