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


Groups > comp.lang.python > #104645 > unrolled thread

The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?)

Started byChris Angelico <rosuav@gmail.com>
First post2016-03-12 08:36 +1100
Last post2016-03-12 15:29 +0000
Articles 20 on this page of 314 — 29 participants

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


Contents

  The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-12 08:36 +1100
    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 01:16 +0000
      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Rustom Mody <rustompmody@gmail.com> - 2016-03-11 21:02 -0800
      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 11:50 +0000
        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-12 14:13 +0200
          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 13:18 +0000
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-12 15:40 +0200
              Re: The Cost of Dynamism Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-12 20:24 +0100
                Re: The Cost of Dynamism Chris Angelico <rosuav@gmail.com> - 2016-03-13 08:18 +1100
                  Re: The Cost of Dynamism Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-13 21:05 +0100
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-13 00:40 +1100
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-12 20:26 +0100
              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 22:14 +0000
                Re: The Cost of Dynamism Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-13 21:08 +0100
          Re: The Cost of Dynamism Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-12 20:20 +0100
        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-12 23:52 +1100
      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-13 03:22 +1100
        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-13 08:45 +1100
          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-13 00:10 +0200
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-13 09:19 +1100
              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-13 00:57 +0200
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 23:57 +0000
              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-13 01:10 +0000
                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-13 19:39 +0000
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-13 22:12 +0200
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-14 17:17 +0000
                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-14 17:53 +0000
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-14 20:25 +0200
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-14 18:39 +0000
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-14 20:57 +0000
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-15 12:55 +1100
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-15 13:10 +1100
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-15 11:52 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-15 14:58 +0000
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-15 18:28 +0000
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-14 07:57 +1100
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-13 22:03 +0000
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Christian Gollwitzer <auriocus@gmx.de> - 2016-03-13 22:26 +0100
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-14 08:44 +1100
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Paul Rubin <no.email@nospam.invalid> - 2016-03-13 16:25 -0700
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-15 10:24 +1100
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-15 00:25 +0000
                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-15 00:50 +0000
                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-21 01:15 +0000
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-21 01:28 +0000
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-21 12:35 +1100
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-21 02:04 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-21 13:07 +1100
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ben Finney <ben+python@benfinney.id.au> - 2016-03-21 13:11 +1100
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-03-21 17:41 +1100
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Rustom Mody <rustompmody@gmail.com> - 2016-03-21 00:07 -0700
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ben Finney <ben+python@benfinney.id.au> - 2016-03-21 18:47 +1100
                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-22 03:30 +1100
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-21 16:51 +0000
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ben Finney <ben+python@benfinney.id.au> - 2016-03-23 17:09 +1100
                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-23 10:34 +0000
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 21:48 +1100
                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-23 13:41 +0000
                                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-24 14:24 +1100
                                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Rustom Mody <rustompmody@gmail.com> - 2016-03-23 20:38 -0700
                                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 13:01 +0000
                                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-24 09:33 -0400
                                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-24 16:16 +0200
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Rustom Mody <rustompmody@gmail.com> - 2016-03-24 07:37 -0700
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-24 22:43 +0000
                                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-25 05:10 +1100
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 19:54 +0000
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-24 22:18 +0000
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-24 21:02 -0400
                                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-25 11:06 +0000
                                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-26 03:22 +1100
                                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-25 22:08 +0000
                                                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-26 13:19 +1100
                                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-26 13:45 -0400
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Michael Torrie <torriem@gmail.com> - 2016-03-24 20:49 -0600
                                                    Undefined behaviour in C [was Re: The Cost of Dynamism] Steven D'Aprano <steve@pearwood.info> - 2016-03-26 02:50 +1100
                                                      Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Marko Rauhamaa <marko@pacujo.net> - 2016-03-25 18:57 +0200
                                                        Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Steven D'Aprano <steve@pearwood.info> - 2016-03-26 13:46 +1100
                                                          Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Random832 <random832@fastmail.com> - 2016-03-25 22:56 -0400
                                                          Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Paul Rubin <no.email@nospam.invalid> - 2016-03-25 19:59 -0700
                                                            Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Steven D'Aprano <steve@pearwood.info> - 2016-03-26 23:21 +1100
                                                              Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Chris Angelico <rosuav@gmail.com> - 2016-03-27 00:22 +1100
                                                                Re: Undefined behaviour in C [was Re: The Cost of Dynamism] BartC <bc@freeuk.com> - 2016-03-26 14:09 +0000
                                                                  Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Chris Angelico <rosuav@gmail.com> - 2016-03-27 01:30 +1100
                                                                    Re: Undefined behaviour in C [was Re: The Cost of Dynamism] BartC <bc@freeuk.com> - 2016-03-26 15:24 +0000
                                                                      Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Paul Rubin <no.email@nospam.invalid> - 2016-03-26 23:34 -0700
                                                                        Re: Undefined behaviour in C [was Re: The Cost of Dynamism] BartC <bc@freeuk.com> - 2016-03-27 12:31 +0100
                                                                          Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-27 09:47 -0400
                                                                            Re: Undefined behaviour in C [was Re: The Cost of Dynamism] BartC <bc@freeuk.com> - 2016-03-27 15:43 +0100
                                                                              Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Ned Batchelder <ned@nedbatchelder.com> - 2016-03-27 08:48 -0700
                                                                                Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Terry Reedy <tjreedy@udel.edu> - 2016-03-27 12:39 -0400
                                                                                  Useless expressions [was Re: Undefined behaviour in C] Steven D'Aprano <steve@pearwood.info> - 2016-03-28 12:26 +1100
                                                                                    Re: Useless expressions [was Re: Undefined behaviour in C] Terry Reedy <tjreedy@udel.edu> - 2016-03-28 15:34 -0400
                                                                                Re: Undefined behaviour in C [was Re: The Cost of Dynamism] BartC <bc@freeuk.com> - 2016-03-27 17:58 +0100
                                                                                  Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Ned Batchelder <ned@nedbatchelder.com> - 2016-03-27 10:19 -0700
                                                                                    Re: Undefined behaviour in C [was Re: The Cost of Dynamism] BartC <bc@freeuk.com> - 2016-03-27 21:18 +0100
                                                                                      Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Ned Batchelder <ned@nedbatchelder.com> - 2016-03-27 14:55 -0700
                                                                                        Re: Undefined behaviour in C [was Re: The Cost of Dynamism] BartC <bc@freeuk.com> - 2016-03-27 23:11 +0100
                                                                                  Statements as expressions [was Re: Undefined behaviour in C] Steven D'Aprano <steve@pearwood.info> - 2016-03-28 11:54 +1100
                                                                                    Re: Statements as expressions [was Re: Undefined behaviour in C] Paul Rubin <no.email@nospam.invalid> - 2016-03-27 18:40 -0700
                                                                                      Re: Statements as expressions [was Re: Undefined behaviour in C] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-03-29 19:26 +1100
                                                                                        Re: Statements as expressions [was Re: Undefined behaviour in C] Paul Rubin <no.email@nospam.invalid> - 2016-03-29 01:54 -0700
                                                                                        Re: Statements as expressions [was Re: Undefined behaviour in C] Chris Angelico <rosuav@gmail.com> - 2016-03-29 20:09 +1100
                                                                                        Re: Statements as expressions [was Re: Undefined behaviour in C] Marko Rauhamaa <marko@pacujo.net> - 2016-03-29 12:23 +0300
                                                                                        Re: Statements as expressions [was Re: Undefined behaviour in C] BartC <bc@freeuk.com> - 2016-03-29 12:31 +0100
                                                                                          Re: Statements as expressions [was Re: Undefined behaviour in C] Steven D'Aprano <steve@pearwood.info> - 2016-03-30 11:05 +1100
                                                                                        Re: Statements as expressions [was Re: Undefined behaviour in C] Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-29 08:15 -0400
                                                                                    Re: Statements as expressions [was Re: Undefined behaviour in C] BartC <bc@freeuk.com> - 2016-03-28 12:11 +0100
                                                                                      Re: Statements as expressions [was Re: Undefined behaviour in C] Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-03-28 13:55 +0100
                                                                                      Re: Statements as expressions [was Re: Undefined behaviour in C] Paul Rubin <no.email@nospam.invalid> - 2016-03-28 11:27 -0700
                                                                                        Re: Statements as expressions [was Re: Undefined behaviour in C] Rustom Mody <rustompmody@gmail.com> - 2016-03-29 20:14 -0700
                                                                                          Re: Statements as expressions [was Re: Undefined behaviour in C] Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-29 23:49 -0400
                                                                                            Re: Statements as expressions [was Re: Undefined behaviour in C] Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-03-30 15:26 +0100
                                                                                              Re: Statements as expressions [was Re: Undefined behaviour in C] Rustom Mody <rustompmody@gmail.com> - 2016-03-30 09:59 -0700
                                                                                                Re: Statements as expressions [was Re: Undefined behaviour in C] Random832 <random832@fastmail.com> - 2016-03-30 13:07 -0400
                                                                                                  Re: Statements as expressions [was Re: Undefined behaviour in C] Rustom Mody <rustompmody@gmail.com> - 2016-03-30 10:28 -0700
                                                                                                Re: Statements as expressions [was Re: Undefined behaviour in C] Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-30 19:01 -0400
                                                                                                Re: Statements as expressions [was Re: Undefined behaviour in C] Random832 <random832@fastmail.com> - 2016-03-30 20:15 -0400
                                                                              Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-27 18:31 -0400
                                                                              Useless expressions [was Re: Undefined behaviour in C] Steven D'Aprano <steve@pearwood.info> - 2016-03-28 12:45 +1100
                                                                          Useless expressions [was Re: Undefined behaviour in C] Steven D'Aprano <steve@pearwood.info> - 2016-03-28 12:24 +1100
                                                                            Re: Useless expressions [was Re: Undefined behaviour in C] Chris Angelico <rosuav@gmail.com> - 2016-03-28 12:38 +1100
                                                                            Re: Useless expressions [was Re: Undefined behaviour in C] Tim Chase <python.list@tim.thechases.com> - 2016-03-27 21:59 -0500
                                                                            Re: Useless expressions [was Re: Undefined behaviour in C] Chris Angelico <rosuav@gmail.com> - 2016-03-28 14:29 +1100
                                                                            Re: Useless expressions [was Re: Undefined behaviour in C] BartC <bc@freeuk.com> - 2016-03-28 13:18 +0100
                                                                              Re: Useless expressions [was Re: Undefined behaviour in C] Marko Rauhamaa <marko@pacujo.net> - 2016-03-28 16:29 +0300
                                                                              Re: Useless expressions [was Re: Undefined behaviour in C] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-03-29 18:12 +1100
                                                                                Re: Useless expressions Ben Finney <ben+python@benfinney.id.au> - 2016-03-29 18:35 +1100
                                                                    Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Steven D'Aprano <steve@pearwood.info> - 2016-03-27 18:50 +1100
                                                                      Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2016-03-27 10:51 +0100
                                                              Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Paul Rubin <no.email@nospam.invalid> - 2016-03-26 23:13 -0700
                                                                Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Steven D'Aprano <steve@pearwood.info> - 2016-03-27 18:40 +1100
                                                                  Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Rustom Mody <rustompmody@gmail.com> - 2016-03-27 00:52 -0700
                                                                  Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-03-27 21:06 +0100
                                                                    Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2016-03-27 22:16 +0100
                                                          Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Marko Rauhamaa <marko@pacujo.net> - 2016-03-26 10:37 +0200
                                                      Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Chris Angelico <rosuav@gmail.com> - 2016-03-26 08:23 +1100
                                                        Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Steven D'Aprano <steve@pearwood.info> - 2016-03-27 18:13 +1100
                                                      Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Rustom Mody <rustompmody@gmail.com> - 2016-03-25 22:30 -0700
                                                        Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Steven D'Aprano <steve@pearwood.info> - 2016-03-26 21:39 +1100
                                                          Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Chris Angelico <rosuav@gmail.com> - 2016-03-26 23:03 +1100
                                                          Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Rustom Mody <rustompmody@gmail.com> - 2016-03-26 10:43 -0700
                                                            Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Terry Reedy <tjreedy@udel.edu> - 2016-03-26 16:44 -0400
                                                              Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Rustom Mody <rustompmody@gmail.com> - 2016-03-26 22:02 -0700
                                                                Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Rustom Mody <rustompmody@gmail.com> - 2016-03-26 22:54 -0700
                                                            Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Chris Angelico <rosuav@gmail.com> - 2016-03-27 08:58 +1100
                                                            Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Steven D'Aprano <steve@pearwood.info> - 2016-03-27 13:44 +1100
                                                              Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Chris Angelico <rosuav@gmail.com> - 2016-03-27 13:52 +1100
                                                            Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Paul Rubin <no.email@nospam.invalid> - 2016-03-26 23:34 -0700
                                                              Re: Undefined behaviour in C [was Re: The Cost of Dynamism] Rustom Mody <rustompmody@gmail.com> - 2016-03-27 00:13 -0700
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-25 21:07 +0000
                                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-25 00:50 +1100
                                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-25 01:01 +1100
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 14:28 +0000
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) alister <alister.ware@ntlworld.com> - 2016-03-24 18:30 +0000
                                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 14:04 +0000
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-03-24 14:08 +0000
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 14:16 +0000
                                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-03-24 16:34 +0200
                                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 14:49 +0000
                                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Random832 <random832@fastmail.com> - 2016-03-24 10:53 -0400
                                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-03-24 15:03 +0000
                                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 15:18 +0000
                                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-03-24 15:25 +0000
                                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Random832 <random832@fastmail.com> - 2016-03-24 11:30 -0400
                                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-25 04:56 +1100
                                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-03-24 19:07 +0000
                                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-25 04:44 +1100
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Matt Wheeler <m@funkyhat.org> - 2016-03-24 14:22 +0000
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-24 14:51 +0000
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-25 04:27 +1100
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-24 21:24 -0400
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) alister <alister.ware@ntlworld.com> - 2016-03-24 18:14 +0000
                                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-24 08:30 -0700
                                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 16:12 +0000
                                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-24 10:13 -0700
                                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-24 18:03 +0000
                                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-24 17:30 -0700
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Tim Golden <mail@timgolden.me.uk> - 2016-03-23 10:57 +0000
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 22:28 +1100
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-23 08:40 -0700
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-23 16:08 +0000
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Random832 <random832@fastmail.com> - 2016-03-23 12:24 -0400
                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-24 10:55 +1100
                                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Random832 <random832@fastmail.com> - 2016-03-23 20:12 -0400
                                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-24 11:15 +1100
                                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-24 01:12 +0000
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-23 23:21 +0000
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-23 20:26 -0400
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-23 16:09 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-21 03:59 +0000
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-03-21 17:38 +1100
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-21 18:15 +1100
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-21 09:20 +0200
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-21 02:02 +0000
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-21 19:43 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-21 19:57 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-21 13:18 -0700
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-21 18:59 -0400
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-22 12:01 +1100
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-22 11:05 +0000
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-22 22:15 +1100
                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-22 12:59 +0000
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 00:13 +1100
                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-03-22 13:46 +0000
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 01:02 +1100
                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-03-22 15:07 +0000
                                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 02:18 +1100
                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-22 14:02 +0000
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-22 07:15 -0700
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 01:31 +1100
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-23 12:14 +1100
                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 12:21 +1100
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Michael Torrie <torriem@gmail.com> - 2016-03-22 13:43 -0600
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 09:23 +1100
                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-03-23 17:07 +1100
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 17:28 +1100
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-22 04:23 -0700
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ian Foote <ian@feete.org> - 2016-03-22 11:27 +0000
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-22 07:45 -0400
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-22 22:55 +1100
                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-22 23:15 +1100
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-22 23:03 +1100
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-03-22 14:52 +0200
                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 00:00 +1100
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-03-22 15:15 +0200
                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 00:24 +1100
                                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-03-22 15:32 +0200
                                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-23 00:38 +1100
                                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-03-22 15:49 +0200
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Larry Hudson <orgnut@yahoo.com> - 2016-03-22 22:17 -0700
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Terry Reedy <tjreedy@udel.edu> - 2016-03-20 22:21 -0400
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-21 12:34 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-21 23:59 +1100
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-22 00:48 +1100
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Random832 <random832@fastmail.com> - 2016-03-21 10:04 -0400
                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-22 02:09 +1100
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Rustom Mody <rustompmody@gmail.com> - 2016-03-21 08:39 -0700
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-22 02:45 +1100
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-21 17:12 +0000
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Terry Reedy <tjreedy@udel.edu> - 2016-03-21 20:20 -0400
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Rustom Mody <rustompmody@gmail.com> - 2016-03-21 06:02 -0700
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-21 13:08 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) MRAB <python@mrabarnett.plus.com> - 2016-03-21 13:17 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-22 02:11 +1100
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-21 17:31 +0000
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-21 18:18 +0000
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-03-21 19:20 -0400
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-22 00:49 +0000
                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-22 02:01 +0000
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Rustom Mody <rustompmody@gmail.com> - 2016-03-22 04:15 -0700
                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-03-22 17:53 +1100
                                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-22 09:24 +0200
                                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-22 07:44 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Terry Reedy <tjreedy@udel.edu> - 2016-03-21 20:13 -0400
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-21 05:08 -0700
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-21 12:43 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ned Batchelder <ned@nedbatchelder.com> - 2016-03-21 06:12 -0700
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Terry Reedy <tjreedy@udel.edu> - 2016-03-21 19:50 -0400
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-22 00:18 +0000
                                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-22 00:42 +0000
                                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-22 01:00 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Michael Torrie <torriem@gmail.com> - 2016-03-24 13:49 -0600
              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-13 13:01 +1100
                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-13 02:30 +0000
      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-24 22:43 +0000
    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-12 08:48 +0200
      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 11:08 +0000
        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-12 11:27 +0000
        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-12 13:51 +0200
          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 13:42 +0000
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-12 16:38 +0200
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-13 03:56 +1100
              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 17:54 +0000
                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-12 20:07 +0200
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 18:30 +0000
                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-13 20:39 +1100
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-13 13:16 +0000
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-14 14:01 +1100
                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-14 13:00 +0000
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-14 14:43 +0000
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-14 16:21 +0000
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Michael Torrie <torriem@gmail.com> - 2016-03-14 11:55 -0600
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) alister <alister.ware@ntlworld.com> - 2016-03-14 19:45 +0000
                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-14 20:31 +0000
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Christian Gollwitzer <auriocus@gmx.de> - 2016-03-14 22:00 +0100
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-14 21:17 +0000
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-14 21:00 +0000
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-15 12:27 +1100
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-15 01:35 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-15 13:12 +1100
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-15 08:25 +0200
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) alister <alister.ware@ntlworld.com> - 2016-03-15 09:20 +0000
                          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-15 12:02 +0000
                            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-15 23:20 +1100
                              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Rick Johnson <rantingrickjohnson@gmail.com> - 2016-03-15 11:17 -0700
                        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Marko Rauhamaa <marko@pacujo.net> - 2016-03-15 12:14 +0200
                      Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-15 12:19 +1100
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-15 12:11 +1100
        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-12 23:10 +1100
          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-12 23:28 +1100
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-13 00:06 +1100
          Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 15:12 +0000
            Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-13 02:30 +1100
              Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) BartC <bc@freeuk.com> - 2016-03-12 16:42 +0000
                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-12 17:02 +0000
                  Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Steven D'Aprano <steve@pearwood.info> - 2016-03-13 12:20 +1100
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-03-13 01:32 +0000
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Chris Angelico <rosuav@gmail.com> - 2016-03-13 13:03 +1100
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Ben Finney <ben+python@benfinney.id.au> - 2016-03-13 13:33 +1100
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Terry Reedy <tjreedy@udel.edu> - 2016-03-13 01:43 -0500
                    Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Gene Heskett <gheskett@wdtv.com> - 2016-03-13 09:14 -0400
                Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) alister <alister.ware@ntlworld.com> - 2016-03-12 19:03 +0000
        Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) alister <alister.ware@ntlworld.com> - 2016-03-12 15:29 +0000

Page 6 of 16 — ← Prev page 1 … 4 5 [6] 7 8 … 16  Next page →


#105960 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromSteven D'Aprano <steve+comp.lang.python@pearwood.info>
Date2016-03-29 19:26 +1100
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<56fa3c2a$0$1591$c3e8da3$5496439d@news.astraweb.com>
In reply to#105889
On Monday 28 March 2016 12:40, Paul Rubin wrote:

> Steven D'Aprano <steve@pearwood.info> writes:
>> if condition:
>>     print(1)
>>     print(2)
>> else:
>>     print(3)
>>     print(4)
>> what value should it return? Justify your choice.
> 
> It could whatever value that the last call to print() returns.  Lisp
> has worked like that since the 1950's.

"Lisp did it" isn't much of a justification.

The point is that sticking a return value onto a conditional branch with two 
blocks is rather arbitrary. Why return the last value rather than the first? 
Why not return a list of all the values generated in the block? Or 
True/False depending on which branch was taken?

Or for that matter, a random number?

The point is that there's nothing intrinsically obvious or right about 
"return the value of the last statement in the block". 


>> What should be the return value of this statement?
>>
>> while True:
>>     x += 1
>>     if condition: break
> 
> It could return None, or break(val) could return val.

Another arbitrary choice. It *could* return anything. But what *should* it 
return?

An expression naturally and intrinsically should return the value the 
expression calculates. This is such a no-brainer that I feel stupid even 
writing it: "x+1" should return "x+1". It would be crazy to pick something 
else.

But a statement is a statement because it doesn't have a return value. To 
give it one, we have to more-or-less arbitrarily force it to have one, but 
that doesn't make it terribly natural.

del x

Should it return None? The string 'x'? How about the value that x had just 
before it was deleted? True if that allowed the value to be garbage 
collected, False if it wasn't? Or the other way around? None of these 
suggests feel either useful or obviously right.


>> I don't think that "every statement is an expression" is conceptually
>> simpler at all. I think it is more difficult to understand.
> 
> It hasn't been a problem in Lisp or its descendants, Erlang, Haskell,
> etc.  I don't know about Ruby or Javascript.

Maybe, maybe not. But certain statements, at least, are definitely a problem 
in C/C++ :

int war = false; if(war = true) { launchnuke(); }


The way I see it, all expressions are meaningful as statements (although 
possibly not terribly useful if they don't have side-effects) but not all 
statements are meaningful as expressions.

If other languages choose differently, well, that's their right to do so, 
but I don't agree with their choice. On the other hand, I am tempted by the 
thought of a language where all statements return 42.



>> But it is even harder to understand what it might mean for a while
>> loop to be a value, and the benefit of doing so seems significantly
>> less than compelling.
> 
> It means that you get to use an incredibly simple and beautiful
> evaluation model.  Have you ever used Lisp or Scheme?  Give it a try
> sometime.  Excellent free book:
>   https://mitpress.mit.edu/sicp/full-text/book/book.html

I've tried to get into Lisp a couple of times, and it doesn't speak to me. 
If you want my opinion, Forth has a more natural evaluation model.



-- 
Steve

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


#105964 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromPaul Rubin <no.email@nospam.invalid>
Date2016-03-29 01:54 -0700
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<87r3et4qbj.fsf@nightsong.com>
In reply to#105960
Steven D'Aprano <steve+comp.lang.python@pearwood.info> writes:
> The point is that there's nothing intrinsically obvious or right about 
> "return the value of the last statement in the block". 

Strictly speaking it returns the value of the block itself.  The block
is usually evaluated by PROG which returns the last value of the block,
but you could also use PROG1 which uses the first value, or PROG2 which
uses the second value.

> I've tried to get into Lisp a couple of times, and it doesn't speak to me. 
> If you want my opinion, Forth has a more natural evaluation model.

You might like Factor then, www.factorcode.org .

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


#105966 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromChris Angelico <rosuav@gmail.com>
Date2016-03-29 20:09 +1100
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<mailman.135.1459243012.28225.python-list@python.org>
In reply to#105960
On Tue, Mar 29, 2016 at 7:26 PM, Steven D'Aprano
<steve+comp.lang.python@pearwood.info> wrote:
> del x
>
> Should it return None? The string 'x'? How about the value that x had just
> before it was deleted? True if that allowed the value to be garbage
> collected, False if it wasn't? Or the other way around? None of these
> suggests feel either useful or obviously right.

Returning the value x had just before being deleted is certainly
useful - consider the case where x is not a simple name but a
subscripting, which makes this into a destructive lookup. Saying
whether the object was garbage collected or not could also be useful,
but feels very low level.

But if Python were to make 'del' into an expression, the only
semantics needed would be for simple names. For everything else, the
value of 'del x[y]' or 'del x.y' would simply be 'whatever
__delitem__/__delattr__ returns'. And even for simple names, the
semantics could be defined by the enclosing scope's dictionary. It'd
be like Python's operators; yes, you normally expect "x < y" to return
a truthy or falsy value, and for most built-in types it'll return
either True or False, but you can return anything at all - including a
lazy evaluation object for a DSL. Someone could, for instance, make
"del User[42]" return a Query object which, when executed, deletes the
user with primary key 42.

(Note: I am not advocating this. Just saying what would, IMO, be
consistent with the rest of Python.)

ChrisA

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


#105970 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromMarko Rauhamaa <marko@pacujo.net>
Date2016-03-29 12:23 +0300
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<87egatmyd2.fsf@elektro.pacujo.net>
In reply to#105960
Steven D'Aprano <steve+comp.lang.python@pearwood.info>:

> On Monday 28 March 2016 12:40, Paul Rubin wrote:
>
>> Steven D'Aprano <steve@pearwood.info> writes:
>>> if condition:
>>>     print(1)
>>>     print(2)
>>> else:
>>>     print(3)
>>>     print(4)
>>> what value should it return? Justify your choice.
>> 
>> It could whatever value that the last call to print() returns. Lisp
>> has worked like that since the 1950's.
>
> "Lisp did it" isn't much of a justification.

Actually, it would be in my books.

However, Scheme (a Lisp dialect) also has statements that don't return
any particular value. The (if) happens to be an example. Thus,

   (set! x (if #f 3))

Assigns *some* value to x, but the language leaves it open what that
value might be.

Guile (a Scheme implementation) actually provides a distinct
"unspecified" value, which it uses in cases where the language standard
leaves the value unspecified.

> The point is that there's nothing intrinsically obvious or right about
> "return the value of the last statement in the block".

No, but the semantics of a functional language become simpler when you
can assume that every continuation operates on a value.

Consequently, every function in Python returns a value as does every
function in Perl and every command in bash.

> I've tried to get into Lisp a couple of times, and it doesn't speak to
> me. If you want my opinion, Forth has a more natural evaluation model.

Forth, too, has nice, simple semantics. Forth has nothing but statements
that operate on the stack and occasionally cause some side effects.

Here's an example of how Python benefits from the functional model:
decorators. You can use the same decorators both for proper functions
and for procedures that ostensibly don't return a value. Python has
defined "None" to be the default return value for procedures so it is
legal to say,

    a = f()

even if f doesn't return a value.

Unfortunately, Python made a bit of a bad choice in the default return
value. Now Python cannot perform effective tail recursion elimination.
If Python had left the default unspecified, tail recursion elimination
would be simple.

Python's choice benefits the interactive console, which doesn't print
out None values.


Marko

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


#105979 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromBartC <bc@freeuk.com>
Date2016-03-29 12:31 +0100
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<nddot9$8en$1@dont-email.me>
In reply to#105960
On 29/03/2016 09:26, Steven D'Aprano wrote:
> On Monday 28 March 2016 12:40, Paul Rubin wrote:


> The point is that there's nothing intrinsically obvious or right about
> "return the value of the last statement in the block".

But that's exactly what happens inside a typical function: you have 
linear sequence of statements, then you a have return statement: at the 
end. It's a common pattern.

>>> while True:
>>>      x += 1
>>>      if condition: break
>>
>> It could return None, or break(val) could return val.
>
> Another arbitrary choice. It *could* return anything. But what *should* it
> return?

It's up to you. Write it like this (not valid Python):

   while True: x+=1; if c: break; y

Now this is two statement, the loop, and 'y'. We now have a block, and 
because of the block rule, the value is y.


> An expression naturally and intrinsically should return the value the
> expression calculates. This is such a no-brainer that I feel stupid even
> writing it: "x+1" should return "x+1". It would be crazy to pick something
> else.

(This is in contradiction to what you say elsewhere, where:

   graph + node

may be procedural.)

> But a statement is a statement because it doesn't have a return value.

Isn't an expression technically a statement in Python? Therefore a 
statement could have a value. But take this example:

  if cond1:   x=a1
  elif cond2: x=a2
  elif cond3: x=a3
  else:       x=a4

Clearly this would be better expressed as (not valid Python):

   x = if cond1:   a1
       elif cond2: a2
       elif cond3: a3
       else:       a4

So some kinds of statements could conceivably yield a useful value. (And 
each a1, a2 here could be a block or other statement yielding a value.)

> To
> give it one, we have to more-or-less arbitrarily force it to have one, but
> that doesn't make it terribly natural.
>
> del x
>
> Should it return None? The string 'x'? How about the value that x had just
> before it was deleted?

(Actually 'del is a rather odd language feature. And I can't figure out 
how it's implemented; how does it manage 'del x[i]'? Anyway that's 
another matter.)

> True if that allowed the value to be garbage
> collected, False if it wasn't? Or the other way around? None of these
> suggests feel either useful or obviously right.

It doesn't need to give a useful value. Its 'value' lies in being able 
to have it in a sequence or block:

   z = del x; y

> The way I see it, all expressions are meaningful as statements (although
> possibly not terribly useful if they don't have side-effects) but not all
> statements are meaningful as expressions.

Yes. But some are. To list a few statements that could return values 
(some are not part of Python):

- If-elif-else

- Switch and case select statements

- Block

- Increment

- Subroutine call

- Assignment

The rest can still usefully appear in a block. Python has a version of 
if-else that appears in an expression, but it has function-call. But why 
stop there?

Anyway this is all hypothetical, in case anyone thinks I'm pushing for a 
change in the language. I thought such a language was cool in the 1980s, 
but now will settle for a more conservative one even if it's not so elegant.

-- 
bartc

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


#106020 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromSteven D'Aprano <steve@pearwood.info>
Date2016-03-30 11:05 +1100
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<56fb1861$0$1622$c3e8da3$5496439d@news.astraweb.com>
In reply to#105979
On Tue, 29 Mar 2016 10:31 pm, BartC wrote:

> On 29/03/2016 09:26, Steven D'Aprano wrote:
>> On Monday 28 March 2016 12:40, Paul Rubin wrote:
> 
> 
>> The point is that there's nothing intrinsically obvious or right about
>> "return the value of the last statement in the block".
> 
> But that's exactly what happens inside a typical function: you have
> linear sequence of statements, then you a have return statement: at the
> end. It's a common pattern.

But return is an *explicit* exit. And not all languages work that way.


{My Pascal syntax may be a bit rusty...}
function demo(int x): int;
begin
  demo := x + 1;  {sets the return value}
  writeln('x has the value', x);
  writeln('returning now...');
end;


[...]
>> An expression naturally and intrinsically should return the value the
>> expression calculates. This is such a no-brainer that I feel stupid even
>> writing it: "x+1" should return "x+1". It would be crazy to pick
>> something else.
> 
> (This is in contradiction to what you say elsewhere, where:
> 
>    graph + node
> 
> may be procedural.)

Not at all. With operator overloading, the plus operator + ends up as a
method call __add__ or __radd__. This method call can have side-effects,
and it can return anything it likes, including None. That return value can
be ignored, but it is still the return value of the expression:

graph + node  # returns None, use this expression for the side-effects only


Just like print(a, b, c) returns None, and we use if for the side-effects.
It's still an expression ("call the print function with these arguments"),
it does something (prints) and then returns None.


>> But a statement is a statement because it doesn't have a return value.
> 
> Isn't an expression technically a statement in Python? 

I mean statements which are not legal expressions, like:

del x
import module
from module import name
for x in seq: block
while condition: block
try ... except ... else ... finally

etc. I'm sorry that I wasn't pedantic enough to specify "statements (apart
from expressions)" each time I contrasted statements and expressions. Can
you possibly forgive me for my informal use of language?



> Therefore a 
> statement could have a value. But take this example:
> 
>   if cond1:   x=a1
>   elif cond2: x=a2
>   elif cond3: x=a3
>   else:       x=a4
> 
> Clearly this would be better expressed as (not valid Python):
> 
>    x = if cond1:   a1
>        elif cond2: a2
>        elif cond3: a3
>        else:       a4


x = a1 if cond1 else a2 if cond2 else a3 if cond3 else a4

We can split it over multiple lines too:

x = (
     a1 if cond1 else 
     a2 if cond2 else 
     a3 if cond3 else
     a4
     )


> (Actually 'del is a rather odd language feature. And I can't figure out
> how it's implemented; how does it manage 'del x[i]'? Anyway that's
> another matter.)


del x[i] calls x.__delitem__(i)



>> True if that allowed the value to be garbage
>> collected, False if it wasn't? Or the other way around? None of these
>> suggests feel either useful or obviously right.
> 
> It doesn't need to give a useful value.

Hence my suggestion that all statements (apart from expressions) return 42.


> Its 'value' lies in being able to have it in a sequence or block:
> 
>    z = del x; y

In a hypothetical Python where `del x` returns None, that would set z to
None and then evaluate y, doing nothing with the result.




-- 
Steven

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


#105980 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromDennis Lee Bieber <wlfraed@ix.netcom.com>
Date2016-03-29 08:15 -0400
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<mailman.147.1459253727.28225.python-list@python.org>
In reply to#105960
On Tue, 29 Mar 2016 19:26:14 +1100, Steven D'Aprano
<steve+comp.lang.python@pearwood.info> declaimed the following:

>
>If other languages choose differently, well, that's their right to do so, 
>but I don't agree with their choice. On the other hand, I am tempted by the 
>thought of a language where all statements return 42.

	Too simple -- the EXIT (whatever the language uses for that) should
return the digits of PI (all of them <G>)
-- 
	Wulfraed                 Dennis Lee Bieber         AF6VN
    wlfraed@ix.netcom.com    HTTP://wlfraed.home.netcom.com/

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


#105909 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromBartC <bc@freeuk.com>
Date2016-03-28 12:11 +0100
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<ndb3av$dn1$1@dont-email.me>
In reply to#105884
On 28/03/2016 01:54, Steven D'Aprano wrote:
> On Mon, 28 Mar 2016 03:58 am, BartC wrote:
>
>>> One of Guido's principles in designing Python was to keep it simple,
>>> even where that might mean people could make errors with it.  This part
>>> of the language is no different: any expression can be a statement.
>>
>> Yeah, but even simpler would be that any statement can also be an
>> expression! He didn't go that far though.
>
> People say that, but I don't believe it.

Well, some languages work like that. I think Lisp does. And so does the 
more 'normal'-looking Algol-68.

  What does it mean to say that any
> statement could also be an expression? If this statement is an expression:
>
>
> if condition:
>      print(1)
>      print(2)
> else:
>      print(3)
>      print(4)
>
>
> what value should it return? Justify your choice.

Each branch of the 'if-else' returns the value of the last 
statement/expression in each block. The if-statement as a whole returns 
one or the other.

Here, it might be the return value of print(); probably None.

> What should be the return value of this statement?
>
> while True:
>      x += 1
>      if condition: break

Many statements such as loops just returned 'void' in A68. The 
interesting statements were if, case-switch and block (where the value 
is that of the last statement/expression).

To make the best use of this, you really need a more free-format syntax 
than Python, and blocks need closure. A68 used the funny-looking 'fi' to 
close an if-statement, and 'od' for a loop:

  while c:=psource[n]; n+:=1; c!=etx do  ... od

  if c then a else b fi := 0      # also written (c|a|b):=0

  return case n in: 10,20,30 out: 90 esac

> I don't think that "every statement is an expression" is conceptually
> simpler at all. I think it is more difficult to understand. Nearly all
> human languages make a distinction between things and actions:
>
> * expressions return a value, which makes them a thing (noun);
>
> * statements do something, which makes them an action (verb).

Yet Python does allow any expression as a statement. Not even the 
potentially useful block statement, where you do x, y and z and then 
have a normal expression as its value.

And Python allows a for-loop inside a lisp-comprehension.

Python also has an if-else statement in the form of a conditional 
expression (which I won't show as I can never remember the syntax).

> It's easy to understand the concept of an expression where the result is
> dropped. "Hand me that hammer" and then you just drop the hammer on the
> floor.
>
> It's harder to understand the concept of functions (doing words, verbs) as
> values.

Huh? Functions do things then return results. Yet Python also allows 
procedure calls with no explicit return statement, to act as though they 
return a value:

  def p(): pass

  print (p())

It returns None, just like A68 uses 'void'.

So Python picks and chooses what it wants from the more general and 
conceptually simpler model of a language where expressions and 
statements are interchangeable. Python then is a little more complex 
because you have to consider what is allowed, and what isn't.

 >It's being a bit, what's the word
  "First class functions" take a bit of mental effort to understand,
> but the payoff it worth it.
>
> But it is even harder to understand what it might mean for a while loop to
> be a value, and the benefit of doing so seems significantly less than
> compelling. Maybe it is easier for non-English speakers with quite
> different linguistic models, but the benefit of adding statements as
> expressions seems to me to be well less than the extra difficulty it would
> produce.

(I've created several languages based on the Algol-68 model.

With more recent ones I've dropped that model, so that statements and 
expressions are different, and that is strictly enforced. This makes 
implementation simpler, and detects lots more errors.

The few statements that /were/ also useful as expressions, have 
separate, simplified, value-returning versions.)

-- 
Bartc

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


#105912 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromBen Bacarisse <ben.usenet@bsb.me.uk>
Date2016-03-28 13:55 +0100
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<87twjqzrqh.fsf@bsb.me.uk>
In reply to#105909
BartC <bc@freeuk.com> writes:

> On 28/03/2016 01:54, Steven D'Aprano wrote:
<snip>
>> What should be the return value of this statement?
>>
>> while True:
>>      x += 1
>>      if condition: break
>
> Many statements such as loops just returned 'void' in A68. The
> interesting statements were if, case-switch and block (where the value
> is that of the last statement/expression).

An alternative would be for a loop to return the last value of its
controlling expression.  This is usually false for a whole loop but
would be true is the loop was exited using break.  In a for loop, the
value would be the last value of its control variable.  This would again
permit you to tell a break from a normal for loop finishing.  This way
you can make the loop variable local and still use its final value
outside the loop.

Both would render some flag variables and some auxiliary variables
redundant though I've not seen a language that does it.  Maybe in
practice it does not work out so well, but it looked useful when I
sketch it out a while back.

<snip>
-- 
Ben.

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


#105916 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromPaul Rubin <no.email@nospam.invalid>
Date2016-03-28 11:27 -0700
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<878u125ugc.fsf@nightsong.com>
In reply to#105909
BartC <bc@freeuk.com> writes:
> With more recent ones I've dropped that model, so that statements and
> expressions are different, and that is strictly enforced. This makes
> implementation simpler, and detects lots more errors.

You should try Haskell, where there are only expressions, but the ones
that perform actions can be separated from the other ones through the
type system, so using one in the wrong place raises a compile time type
error.

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


#106024 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromRustom Mody <rustompmody@gmail.com>
Date2016-03-29 20:14 -0700
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<720bdbcc-862d-425d-abc0-2dacaaf8f7d9@googlegroups.com>
In reply to#105916
On Tuesday, March 29, 2016 at 12:18:38 AM UTC+5:30, Paul Rubin wrote:
> BartC  writes:
> > With more recent ones I've dropped that model, so that statements and
> > expressions are different, and that is strictly enforced. This makes
> > implementation simpler, and detects lots more errors.
> 
> You should try Haskell, where there are only expressions, but the ones
> that perform actions can be separated from the other ones through the
> type system, so using one in the wrong place raises a compile time type
> error.

When I studied Pascal was mainstream and Lisp (and to smaller extent
Prolog, APL) were hi-faluting.

In retrospect, Pascal got something right that most everyone, both before and 
after got wrong, viz that we need values AND effects.

Philosophically: Is programming about knowing or doing?
Clearly any onesided answer is wrong.
Both columns in the table here need equal weightage
http://blog.languager.org/2016/01/primacy.html#expstat

Pascal → C → Python is a slide down because
Pascal had the clear distinction of procedure and function
C conflated procedure into function with its 'void function'
[Actually the first C had no void]
Python only has None-return
But a None returned to signify a real semantics eg dict.get not finding key
And a None returned because asking for something is meaningless eg print in 
python3 are unfortunately undistinguishable although conceptually totally different

Yeah Haskell's type system carries Pascal's procedure←→function distinction
in great and excruciating detail -- pure and monadic types.
But IMHO monads for distinguishing values and effects is sledgehammer-for-cracking-an-egg

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


#106027 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromDennis Lee Bieber <wlfraed@ix.netcom.com>
Date2016-03-29 23:49 -0400
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<mailman.177.1459309767.28225.python-list@python.org>
In reply to#106024
On Tue, 29 Mar 2016 20:14:02 -0700 (PDT), Rustom Mody
<rustompmody@gmail.com> declaimed the following:


>Pascal ? C ? Python is a slide down because
>Pascal had the clear distinction of procedure and function

	That goes back to FORTRAN (in which one has SUBROUTINE subprocedures,
and FUNCTION subprocedures -- yes, that is how the standard document used
to define them), which quite predates Pascal. Strangely, the precursor to
Pascal -- ALGOL -- apparently used PROC for both procedures and functions.


-- 
	Wulfraed                 Dennis Lee Bieber         AF6VN
    wlfraed@ix.netcom.com    HTTP://wlfraed.home.netcom.com/

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


#106076 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromBen Bacarisse <ben.usenet@bsb.me.uk>
Date2016-03-30 15:26 +0100
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<87zitgujmp.fsf@bsb.me.uk>
In reply to#106027
Dennis Lee Bieber <wlfraed@ix.netcom.com> writes:

> On Tue, 29 Mar 2016 20:14:02 -0700 (PDT), Rustom Mody
> <rustompmody@gmail.com> declaimed the following:
>
>
>>Pascal ? C ? Python is a slide down because
>>Pascal had the clear distinction of procedure and function
>
> 	That goes back to FORTRAN (in which one has SUBROUTINE subprocedures,
> and FUNCTION subprocedures -- yes, that is how the standard document used
> to define them), which quite predates Pascal. Strangely, the precursor to
> Pascal -- ALGOL -- apparently used PROC for both procedures and
> functions.

Algol 60 used "procedure" but it maintained the distinction in that
functions had (have?) a type and subroutines didn't (don't).  Algol 68
uses PROC for both and the type VOID for procedures with no value.

-- 
Ben.

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


#106096 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromRustom Mody <rustompmody@gmail.com>
Date2016-03-30 09:59 -0700
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<ead5d60d-fc4a-439b-a622-d20072c6cb0b@googlegroups.com>
In reply to#106076
On Wednesday, March 30, 2016 at 7:56:50 PM UTC+5:30, Ben Bacarisse wrote:
> Dennis Lee Bieber  writes:
<something that I unfortunately missed>
Sorry Dennis
Dont see you at all
Neither on googlegroups -- which of course everyone loves to hate
Nor the archive: https://mail.python.org/pipermail/python-list/2016-March/date.html

Only see your posts when someone quotes them

Yes Fortran (and Basic) had procedures and functions
At least the BBC-micros that I grew up on had that distinction

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


#106097 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromRandom832 <random832@fastmail.com>
Date2016-03-30 13:07 -0400
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<mailman.219.1459357660.28225.python-list@python.org>
In reply to#106096
On Wed, Mar 30, 2016, at 12:59, Rustom Mody wrote:
> On Wednesday, March 30, 2016 at 7:56:50 PM UTC+5:30, Ben Bacarisse wrote:
> > Dennis Lee Bieber  writes:
> <something that I unfortunately missed>
> Sorry Dennis
> Dont see you at all
> Neither on googlegroups -- which of course everyone loves to hate
> Nor the archive:
> https://mail.python.org/pipermail/python-list/2016-March/date.html

Looking at the headers of his emails, I see "X-No-Archive: YES"

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


#106098 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromRustom Mody <rustompmody@gmail.com>
Date2016-03-30 10:28 -0700
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<9fdb4edf-7a57-46ea-91f1-3f7b1fe5c3f1@googlegroups.com>
In reply to#106097
On Wednesday, March 30, 2016 at 10:37:58 PM UTC+5:30, Random832 wrote:
> On Wed, Mar 30, 2016, at 12:59, Rustom Mody wrote:
> > On Wednesday, March 30, 2016 at 7:56:50 PM UTC+5:30, Ben Bacarisse wrote:
> > > Dennis Lee Bieber  writes:
> > <something that I unfortunately missed>
> > Sorry Dennis
> > Dont see you at all
> > Neither on googlegroups -- which of course everyone loves to hate
> > Nor the archive:
> > https://mail.python.org/pipermail/python-list/2016-March/date.html
> 
> Looking at the headers of his emails, I see "X-No-Archive: YES"

Yes
Earlier I used to see (in GG) Dennis' posts with some message such as
"Will be removed in 6 days" or some such
Now not at all.

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


#106116 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromDennis Lee Bieber <wlfraed@ix.netcom.com>
Date2016-03-30 19:01 -0400
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<mailman.228.1459378897.28225.python-list@python.org>
In reply to#106096
On Wed, 30 Mar 2016 13:07:37 -0400, Random832 <random832@fastmail.com>
declaimed the following:

>On Wed, Mar 30, 2016, at 12:59, Rustom Mody wrote:
>> On Wednesday, March 30, 2016 at 7:56:50 PM UTC+5:30, Ben Bacarisse wrote:
>> > Dennis Lee Bieber  writes:
>> <something that I unfortunately missed>
>> Sorry Dennis
>> Dont see you at all
>> Neither on googlegroups -- which of course everyone loves to hate
>> Nor the archive:
>> https://mail.python.org/pipermail/python-list/2016-March/date.html
>
>Looking at the headers of his emails, I see "X-No-Archive: YES"

	Though I'm surprised GoogleGroups would expire that fast.

	Google is the reason I inserted that header -- I started back in the
days when news-servers routinely expired stuff (text groups about monthly
lifespan, the binary groups were expiring at 24 hours). Then along came
Google with the "lifetime availability" threat.
-- 
	Wulfraed                 Dennis Lee Bieber         AF6VN
    wlfraed@ix.netcom.com    HTTP://wlfraed.home.netcom.com/

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


#106118 — Re: Statements as expressions [was Re: Undefined behaviour in C]

FromRandom832 <random832@fastmail.com>
Date2016-03-30 20:15 -0400
SubjectRe: Statements as expressions [was Re: Undefined behaviour in C]
Message-ID<mailman.230.1459383339.28225.python-list@python.org>
In reply to#106096
On Wed, Mar 30, 2016, at 19:01, Dennis Lee Bieber wrote:
> 	Though I'm surprised GoogleGroups would expire that fast.
> 
> 	Google is the reason I inserted that header -- I started back in the
> days when news-servers routinely expired stuff (text groups about monthly
> lifespan, the binary groups were expiring at 24 hours). Then along came
> Google with the "lifetime availability" threat.

I guess I'm not sure I understand the motive for considering such a
thing a "threat". Why do you _care_ if technical discussions about
Python are available forever? I mean, it's useful for there to be a
record of the discussion that led to making a decision about a PEP, or
prior arguments against an idea.

Sure, one person's posts being missing doesn't do much to that overall,
but I do have to wonder why you care. AIUI, most people's contemporary
reasoning for objecting to DejaNews (if "Google" was truly the reason
you inserted it, you're a latecomer to the idea) was the supposed
exploitation inherent in the fact that it was ad-funded, and most never
claimed to care about it being around forever.

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


#105878 — Re: Undefined behaviour in C [was Re: The Cost of Dynamism]

FromDennis Lee Bieber <wlfraed@ix.netcom.com>
Date2016-03-27 18:31 -0400
SubjectRe: Undefined behaviour in C [was Re: The Cost of Dynamism]
Message-ID<mailman.97.1459117929.28225.python-list@python.org>
In reply to#105847
On Sun, 27 Mar 2016 15:43:33 +0100, BartC <bc@freeuk.com> declaimed the
following:

>
>   fn         # and other kinds of expression
>
>unless some keyword is used. (I've no idea what that might be; all the 
>best ones are taken. But I've already said a keyword can be emulated via 
>a dummy function call.)

	And the cost would be that we'd lose the interactive mode output

>>> def junk():
... 	pass
... 
>>> t = junk
>>> t
<function junk at 0x00000000044C0198>
>>> 

	That IS the return value of the uncalled function, which is thrown out
in script mode.

	It is no different from invoking a function that returns a value, and
not having a LHS to receive the value...

>>> def junk2():
... 	return "Who cares"
... 
>>> junk2()
'Who cares'
>>> 

	In a script file, both result in no output, and the return value is
discarded silently.


-- 
	Wulfraed                 Dennis Lee Bieber         AF6VN
    wlfraed@ix.netcom.com    HTTP://wlfraed.home.netcom.com/

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


#105890 — Useless expressions [was Re: Undefined behaviour in C]

FromSteven D'Aprano <steve@pearwood.info>
Date2016-03-28 12:45 +1100
SubjectUseless expressions [was Re: Undefined behaviour in C]
Message-ID<56f88c9f$0$1605$c3e8da3$5496439d@news.astraweb.com>
In reply to#105847
On Mon, 28 Mar 2016 01:43 am, BartC wrote:

[... talk about function and procedures ...]
> Well, that could be done in Python (not so usefully because you can't
> take account of such info until a call is attempted), but that's not
> what I'm talking about, which is simply allowing:
> 
>    fn(...)
> 
> whether fn has an explicit return or not, and not allowing:
> 
>    fn         # and other kinds of expression
> 
> unless some keyword is used. (I've no idea what that might be; all the
> best ones are taken. But I've already said a keyword can be emulated via
> a dummy function call.)


I think that the only suggestion that might, *just barely*, work in Python
is forbidding the evaluation of a single name as a syntax error. Any other
expression would have to still be allowed.

Advantage:

- catches various errors, such as forgetting to call 
  procedure-like functions:

    main  # oops, meant main()


  or mistyping a keyword:

    for x in sequence:
        if condition: next  # oops, meant continue



Disadvantages:

- makes it less convenient to use the `try: name except NameError` idiom.

- won't do anything about errors like this:

   x = y  # oops, meant to call y()
   a = b  # this one is okay though

- it treats a single name as a special case of arbitrary 
  expressions. What's so special about the single name case
  that we should guard against this:

    name

  but not this?

    name.validate


The Zen of Python has something to say about special cases.

import this



Now, I happen to think that using "name.validate" for the side-effects of
the attribute look-up is a terrible idea. But it's legal code, and the
compiler shouldn't make value judgements about good or bad code. You want
value judgements, use a linter.



-- 
Steven

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


Page 6 of 16 — ← Prev page 1 … 4 5 [6] 7 8 … 16  Next page →

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


csiph-web