Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #108830 > unrolled thread
| Started by | Herkermer Sherwood <theherk@gmail.com> |
|---|---|
| First post | 2016-05-19 09:31 -0700 |
| Last post | 2016-06-16 11:19 +1000 |
| Articles | 20 on this page of 282 — 43 participants |
Back to article view | Back to comp.lang.python
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
for / while else doesn't make sense Herkermer Sherwood <theherk@gmail.com> - 2016-05-19 09:31 -0700
Re: for / while else doesn't make sense Ned Batchelder <ned@nedbatchelder.com> - 2016-05-19 10:22 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-20 04:02 +1000
Re: for / while else doesn't make sense theherk@gmail.com - 2016-05-19 11:47 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-19 23:28 +0300
Re: for / while else doesn't make sense David Jardine <david@jardine.de> - 2016-05-19 21:49 +0200
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-20 03:46 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-19 17:55 +0000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-20 10:06 +1000
Re: for / while else doesn't make sense gst <g.starck@gmail.com> - 2016-05-19 19:02 -0700
Re: for / while else doesn't make sense Stephen Hansen <me+python@ixokai.io> - 2016-05-19 23:53 -0700
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-20 11:55 +0000
Re: for / while else doesn't make sense Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-05-20 19:57 -0400
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-21 21:26 +1000
Re: for / while else doesn't make sense Ethan Furman <ethan@stoneleaf.us> - 2016-05-20 16:58 -0700
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-21 00:24 +0000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-21 13:50 +1000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-21 14:01 +1000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-21 19:56 +1000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-21 20:08 +1000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-21 20:55 +1000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-21 21:10 +1000
Re: for / while else doesn't make sense Erik <python@lucidity.plus.com> - 2016-05-21 08:20 +0100
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-21 11:37 +0300
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-21 20:39 +1000
Re: for / while else doesn't make sense Erik <python@lucidity.plus.com> - 2016-05-21 21:48 +0100
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-22 12:57 +1000
Re: for / while else doesn't make sense Michael Selik <michael.selik@gmail.com> - 2016-05-22 02:55 +0000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-21 17:29 +1000
Re: for / while else doesn't make sense Bob Martin <bob.martin@excite.com> - 2016-05-20 07:45 +0100
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-20 06:01 +1000
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-19 14:11 -0600
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-20 06:27 +1000
Re: for / while else doesn't make sense Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2016-05-20 11:51 +1200
Re: for / while else doesn't make sense Erik <python@lucidity.plus.com> - 2016-05-20 09:09 +0100
Re: for / while else doesn't make sense Zachary Ware <zachary.ware+pylist@gmail.com> - 2016-05-20 10:59 -0500
Re: for / while else doesn't make sense Christopher Reimer <christopher_reimer@icloud.com> - 2016-05-20 12:20 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-21 08:43 +1000
Re: for / while else doesn't make sense theherk@gmail.com - 2016-05-20 16:24 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-21 09:03 +0300
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-21 21:26 +1000
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-21 07:51 -0600
Re: for / while else doesn't make sense Grant Edwards <grant.b.edwards@gmail.com> - 2016-05-21 15:20 +0000
Re: for / while else doesn't make sense Ben Finney <ben+python@benfinney.id.au> - 2016-05-21 10:21 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-21 00:35 +0000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-21 12:05 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-22 14:15 +0000
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-22 17:58 +0300
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-22 15:09 +0000
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-22 08:26 -0700
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-05-22 13:25 -0400
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-22 10:34 -0700
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-22 18:06 +0000
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-05-22 14:17 -0400
Re: for / while else doesn't make sense Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-05-23 17:09 +1000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-23 01:19 +1000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-23 01:32 +1000
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-22 18:50 +0300
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-22 15:52 +0000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-23 02:35 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-22 16:46 +0000
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-22 10:22 -0700
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-05-22 13:30 -0400
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-22 17:55 +0000
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-05-22 14:14 -0400
Re: for / while else doesn't make sense Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-22 20:51 +0100
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-23 00:34 +0000
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-22 17:04 -0600
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-23 08:09 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-23 00:36 +0000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-23 11:01 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-23 01:00 +0000
Re: for / while else doesn't make sense breamoreboy@gmail.com - 2016-05-22 18:47 -0700
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-23 15:35 +0000
Re: for / while else doesn't make sense MRAB <python@mrabarnett.plus.com> - 2016-05-23 02:51 +0100
Re: for / while else doesn't make sense Ben Finney <ben+python@benfinney.id.au> - 2016-05-23 14:13 +1000
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-22 23:09 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-23 09:30 +0300
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-22 23:46 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-05-23 18:09 +1000
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-23 08:14 -0600
Re: for / while else doesn't make sense Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-23 15:29 +0100
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-23 08:49 -0600
Re: for / while else doesn't make sense Pete Forman <petef4+usenet@gmail.com> - 2016-05-23 19:16 +0100
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-23 13:24 -0600
Re: for / while else doesn't make sense Pete Forman <petef4+usenet@gmail.com> - 2016-05-23 22:50 +0100
Re: for / while else doesn't make sense Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2016-05-24 18:49 +1200
Re: for / while else doesn't make sense Pete Forman <petef4+usenet@gmail.com> - 2016-05-24 19:03 +0100
Re: for / while else doesn't make sense Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2016-05-25 18:35 +1200
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-24 10:38 +1000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-24 00:57 +1000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-24 01:47 +1000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-24 01:57 +1000
Re: for / while else doesn't make sense Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-23 17:51 +0100
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-24 02:59 +1000
Re: for / while else doesn't make sense Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-23 20:55 +0100
Re: for / while else doesn't make sense Mark Dickinson <mdickinson@enthought.com> - 2016-05-23 20:17 +0000
Re: for / while else doesn't make sense Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-23 22:01 +0100
Numerical methods [was Re: for / while else doesn't make sense] Steven D'Aprano <steve@pearwood.info> - 2016-05-24 10:57 +1000
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-23 08:30 -0700
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-23 10:02 -0600
Re: for / while else doesn't make sense Grant Edwards <grant.b.edwards@gmail.com> - 2016-05-23 20:22 +0000
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-23 09:53 -0600
When were real numbers born? (was for / while else doesn't make sense) Rustom Mody <rustompmody@gmail.com> - 2016-05-23 22:02 -0700
Re: for / while else doesn't make sense Christopher Reimer <christopher_reimer@icloud.com> - 2016-05-23 15:36 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-24 11:05 +1000
Re: for / while else doesn't make sense Ned Batchelder <ned@nedbatchelder.com> - 2016-05-23 19:19 -0700
META Culture of this place [was Re: for / while else doesn't make sense] Steven D'Aprano <steve@pearwood.info> - 2016-05-25 02:43 +1000
Re: META Culture of this place [was Re: for / while else doesn't make sense] boB Stepp <robertvstepp@gmail.com> - 2016-05-24 12:19 -0500
Re: META Culture of this place [was Re: for / while else doesn't make sense] Ned Batchelder <ned@nedbatchelder.com> - 2016-05-24 10:44 -0700
Re: META Culture of this place [was Re: for / while else doesn't make sense] Paul Rubin <no.email@nospam.invalid> - 2016-05-24 12:54 -0700
Re: for / while else doesn't make sense Grant Edwards <grant.b.edwards@gmail.com> - 2016-05-24 14:23 +0000
Re: for / while else doesn't make sense Christopher Reimer <christopher_reimer@icloud.com> - 2016-05-24 10:40 -0700
Re: for / while else doesn't make sense Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2016-05-25 18:38 +1200
Extended ASCII [was Re: for / while else doesn't make sense] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-05-25 17:30 +1000
Re: for / while else doesn't make sense Christopher Reimer <christopher_reimer@icloud.com> - 2016-05-25 02:10 -0700
Exended ASCII and code pages [was Re: for / while else doesn't make sense] Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-05-25 20:19 +1000
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Chris Angelico <rosuav@gmail.com> - 2016-05-25 20:30 +1000
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Erik <python@lucidity.plus.com> - 2016-05-25 22:03 +0100
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-05-26 10:21 +0300
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Rustom Mody <rustompmody@gmail.com> - 2016-05-26 00:44 -0700
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Marko Rauhamaa <marko@pacujo.net> - 2016-05-26 12:11 +0300
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Chris Angelico <rosuav@gmail.com> - 2016-05-26 19:20 +1000
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Erik <python@lucidity.plus.com> - 2016-05-26 21:54 +0100
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-05-27 08:03 +0300
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-05-25 21:28 -0400
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Erik <python@lucidity.plus.com> - 2016-05-26 09:11 +0100
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Marko Rauhamaa <marko@pacujo.net> - 2016-05-26 12:20 +0300
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Erik <python@lucidity.plus.com> - 2016-05-26 21:29 +0100
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Marko Rauhamaa <marko@pacujo.net> - 2016-05-27 00:12 +0300
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Steven D'Aprano <steve@pearwood.info> - 2016-05-27 13:35 +1000
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Marko Rauhamaa <marko@pacujo.net> - 2016-05-27 09:10 +0300
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Steven D'Aprano <steve@pearwood.info> - 2016-05-27 16:47 +1000
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Marko Rauhamaa <marko@pacujo.net> - 2016-05-27 10:04 +0300
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Steven D'Aprano <steve@pearwood.info> - 2016-05-27 19:56 +1000
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Random832 <random832@fastmail.com> - 2016-05-27 09:51 -0400
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Rustom Mody <rustompmody@gmail.com> - 2016-05-27 08:53 -0700
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Random832 <random832@fastmail.com> - 2016-05-27 12:09 -0400
Coding systems are political (was Exended ASCII and code pages) Rustom Mody <rustompmody@gmail.com> - 2016-05-27 21:46 -0700
Re: Coding systems are political (was Exended ASCII and code pages) wxjmfauth@gmail.com - 2016-05-28 08:16 -0700
Re: Coding systems are political (was Exended ASCII and code pages) Ned Batchelder <ned@nedbatchelder.com> - 2016-05-28 08:50 -0700
Re: Coding systems are political (was Exended ASCII and code pages) Random832 <random832@fastmail.com> - 2016-05-28 14:05 -0400
Re: Coding systems are political (was Exended ASCII and code pages) Steven D'Aprano <steve@pearwood.info> - 2016-05-29 15:37 +1000
Re: Coding systems are political (was Exended ASCII and code pages) Rustom Mody <rustompmody@gmail.com> - 2016-05-28 23:12 -0700
Re: Coding systems are political (was Exended ASCII and code pages) Terry Reedy <tjreedy@udel.edu> - 2016-05-29 14:46 -0400
Re: Coding systems are political (was Exended ASCII and code pages) Christian Gollwitzer <auriocus@gmx.de> - 2016-05-29 22:29 +0200
Re: Coding systems are political (was Exended ASCII and code pages) wxjmfauth@gmail.com - 2016-05-30 06:35 -0700
Re: Coding systems are political (was Exended ASCII and code pages) Rustom Mody <rustompmody@gmail.com> - 2016-06-04 20:54 -0700
Re: Coding systems are political (was Exended ASCII and code pages) alister <alister.ware@ntlworld.com> - 2016-05-29 06:19 +0000
Re: Coding systems are political (was Exended ASCII and code pages) Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2016-05-29 20:54 +1200
Re: Coding systems are political (was Exended ASCII and code pages) Marko Rauhamaa <marko@pacujo.net> - 2016-05-29 12:56 +0300
Re: Coding systems are political (was Exended ASCII and code pages) wxjmfauth@gmail.com - 2016-05-30 09:11 -0700
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Chris Angelico <rosuav@gmail.com> - 2016-05-28 02:16 +1000
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Steven D'Aprano <steve@pearwood.info> - 2016-05-28 18:54 +1000
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Marko Rauhamaa <marko@pacujo.net> - 2016-05-27 22:03 +0300
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Rustom Mody <rustompmody@gmail.com> - 2016-05-27 21:23 -0700
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Rustom Mody <rustompmody@gmail.com> - 2016-05-26 03:39 -0700
Re: Exended ASCII and code pages [was Re: for / while else doesn't make sense] Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-05-26 07:07 -0400
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-25 13:47 +0300
Re: for / while else doesn't make sense Christopher Reimer <christopher_reimer@icloud.com> - 2016-05-25 05:19 -0700
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-25 22:49 -0700
Re: for / while else doesn't make sense Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-05-26 09:54 +0300
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-26 00:44 -0700
Re: for / while else doesn't make sense wxjmfauth@gmail.com - 2016-05-26 00:52 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-26 12:05 +0300
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-05-29 14:41 -0400
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-05-29 22:01 +0300
Re: for / while else doesn't make sense Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2016-05-23 20:07 -0400
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-24 10:11 +1000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-24 02:59 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-23 17:09 +0000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-24 03:33 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-23 17:57 +0000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-24 04:14 +1000
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-05-23 13:44 -0400
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-05-23 11:52 -0600
Re: for / while else doesn't make sense Alan Evangelista <alanoe@linux.vnet.ibm.com> - 2016-05-23 15:06 -0300
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-24 12:15 +1000
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-24 10:54 +0000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-05-25 03:44 +1000
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-25 03:49 +1000
Re: for / while else doesn't make sense MRAB <python@mrabarnett.plus.com> - 2016-05-24 19:57 +0100
Re: for / while else doesn't make sense Jon Ribbens <jon+usenet@unequivocal.co.uk> - 2016-05-24 20:10 +0000
Re: for / while else doesn't make sense Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-05-23 20:29 +0100
Re: for / while else doesn't make sense Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-05-23 18:33 +1000
Re: for / while else doesn't make sense Grant Edwards <grant.b.edwards@gmail.com> - 2016-05-21 02:17 +0000
Re: for / while else doesn't make sense Christopher Reimer <christopher_reimer@icloud.com> - 2016-05-20 18:23 -0700
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-05-21 12:31 +1000
Re: for / while else doesn't make sense Christopher Reimer <christopher_reimer@icloud.com> - 2016-05-20 20:47 -0700
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-05-20 22:18 -0700
Education [was Re: for / while else doesn't make sense] Steven D'Aprano <steve@pearwood.info> - 2016-05-21 20:05 +1000
Re: Education [was Re: for / while else doesn't make sense] Christopher Reimer <christopher_reimer@icloud.com> - 2016-05-21 08:51 -0700
Re: Education [was Re: for / while else doesn't make sense] Marko Rauhamaa <marko@pacujo.net> - 2016-05-21 20:08 +0300
Re: Education [was Re: for / while else doesn't make sense] Rob Gaddi <rgaddi@highlandtechnology.invalid> - 2016-05-23 16:44 +0000
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-01 16:39 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-06-02 13:44 +1000
Re: for / while else doesn't make sense Rob Gaddi <rgaddi@highlandtechnology.invalid> - 2016-06-02 20:09 +0000
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-06-02 14:46 -0600
Re: for / while else doesn't make sense BartC <bc@freeuk.com> - 2016-06-02 21:52 +0100
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-02 18:05 -0700
Re: for / while else doesn't make sense BartC <bc@freeuk.com> - 2016-06-03 10:23 +0100
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-02 19:47 -0700
Re: for / while else doesn't make sense BartC <bc@freeuk.com> - 2016-06-03 10:32 +0100
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-03 09:22 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-04 12:20 +1000
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-03 20:41 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-04 19:27 +1000
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-04 20:20 -0700
Re: for / while else doesn't make sense BartC <bc@freeuk.com> - 2016-06-04 13:55 +0100
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-02 18:08 -0700
Re: for / while else doesn't make sense Rob Gaddi <rgaddi@highlandtechnology.invalid> - 2016-06-03 15:52 +0000
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-03 09:24 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-04 13:00 +1000
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-03 20:43 -0700
Re: for / while else doesn't make sense Ned Batchelder <ned@nedbatchelder.com> - 2016-06-04 04:37 -0700
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-04 20:29 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-05 16:35 +1000
Re: for / while else doesn't make sense Ned Batchelder <ned@nedbatchelder.com> - 2016-06-05 04:29 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-06-05 14:43 +0300
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-06 17:51 -0700
Re: for / while else doesn't make sense Dan Sommers <dan@tombstonezero.net> - 2016-06-07 03:34 +0000
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-07 00:53 -0700
Re: for / while else doesn't make sense Dan Sommers <dan@tombstonezero.net> - 2016-06-07 12:27 +0000
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-07 14:57 -0700
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-06-06 22:35 -0600
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-07 00:52 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-06-07 11:00 +0300
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-07 15:07 -0700
Re: for / while else doesn't make sense Ned Batchelder <ned@nedbatchelder.com> - 2016-06-07 17:31 -0700
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-07 18:25 -0700
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-07 18:29 -0700
Re: for / while else doesn't make sense Ned Batchelder <ned@nedbatchelder.com> - 2016-06-07 18:40 -0700
Re: for / while else doesn't make sense breamoreboy@gmail.com - 2016-06-07 20:45 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-06-08 08:24 +0300
Re: for / while else doesn't make sense Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-06-07 18:36 +1000
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-06-07 05:52 -0600
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-07 14:58 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-06-08 01:06 +0300
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-07 15:08 -0700
Re: for / while else doesn't make sense Marko Rauhamaa <marko@pacujo.net> - 2016-06-08 08:27 +0300
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-08 17:34 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-06-09 18:19 +1000
Re: for / while else doesn't make sense Ian Kelly <ian.g.kelly@gmail.com> - 2016-06-07 17:11 -0600
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-06 17:53 -0700
Re: for / while else doesn't make sense Ethan Furman <ethan@stoneleaf.us> - 2016-06-07 21:13 -0700
Re: for / while else doesn't make sense pavlovevidence@gmail.com - 2016-06-12 00:01 -0700
AttributeError into a bloc try-except AttributeError Vincent Vande Vyvre <vincent.vande.vyvre@telenet.be> - 2016-06-12 09:20 +0200
Re: AttributeError into a bloc try-except AttributeError Vincent Vande Vyvre <vincent.vande.vyvre@telenet.be> - 2016-06-12 10:30 +0200
Re: for / while else doesn't make sense Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2016-06-12 20:06 +1000
Re: for / while else doesn't make sense Michael Selik <michael.selik@gmail.com> - 2016-06-12 18:44 +0000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-13 12:12 +1000
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-12 20:46 -0700
Re: for / while else doesn't make sense Michael Selik <michael.selik@gmail.com> - 2016-06-13 23:45 +0000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-14 12:43 +1000
Re: for / while else doesn't make sense Michael Selik <michael.selik@gmail.com> - 2016-06-14 04:37 +0000
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-14 08:33 -0700
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-14 16:27 -0700
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-14 18:29 -0700
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-15 13:12 +1000
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-14 20:38 -0700
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-15 04:19 -0700
Re: for / while else doesn't make sense BartC <bc@freeuk.com> - 2016-06-15 13:27 +0100
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-15 05:44 -0700
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-06-15 09:51 -0400
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-15 07:20 -0700
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-06-15 11:54 -0400
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-15 10:03 -0700
Re: for / while else doesn't make sense BartC <bc@freeuk.com> - 2016-06-15 18:27 +0100
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-16 11:40 +1000
Re: for / while else doesn't make sense Michael Selik <michael.selik@gmail.com> - 2016-06-15 17:18 +0000
Re: for / while else doesn't make sense Random832 <random832@fastmail.com> - 2016-06-15 13:41 -0400
Re: for / while else doesn't make sense Rustom Mody <rustompmody@gmail.com> - 2016-06-15 07:31 -0700
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-15 19:59 -0700
Re: for / while else doesn't make sense Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-15 19:54 -0700
What is structured programming (was for/while else doesn't make sense) Rustom Mody <rustompmody@gmail.com> - 2016-06-15 22:48 -0700
Re: What is structured programming (was for/while else doesn't make sense) Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-15 22:57 -0700
Re: What is structured programming (was for/while else doesn't make sense) Rustom Mody <rustompmody@gmail.com> - 2016-06-16 04:12 -0700
Re: What is structured programming (was for/while else doesn't make sense) Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-16 18:53 -0700
Re: What is structured programming (was for/while else doesn't make sense) Rustom Mody <rustompmody@gmail.com> - 2016-06-17 09:32 -0700
Re: What is structured programming (was for/while else doesn't make sense) Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-17 16:07 -0700
Re: for / while else doesn't make sense Chris Angelico <rosuav@gmail.com> - 2016-06-15 23:56 +1000
Re: for / while else doesn't make sense Steven D'Aprano <steve@pearwood.info> - 2016-06-16 11:19 +1000
Page 9 of 15 — ← Prev page 1 … 7 8 [9] 10 11 … 15 Next page →
| From | Rustom Mody <rustompmody@gmail.com> |
|---|---|
| Date | 2016-05-25 22:49 -0700 |
| Message-ID | <e44bddde-5f4a-4174-a53b-d9c7fb869923@googlegroups.com> |
| In reply to | #109111 |
On Wednesday, May 25, 2016 at 4:18:02 PM UTC+5:30, Marko Rauhamaa wrote: > Christopher Reimer: > > > Back in the early 1980's, I grew up on 8-bit processors and latin-1 was > > all we had for ASCII. > > You really were very advanced. According to <URL: > https://en.wikipedia.org/wiki/ISO/IEC_8859-1#History>, ISO 8859-1 was > standardized in 1985. "Eight-bit-cleanness" became a thing in the early > 1990's. > > Where I was in late 1980's, the terminals were still 7-bit, and > instead of ASCII, national 7-bit character set variants were being used. > For example, you might see Pascal code like this: > > ä return the net å > ret := grossÄunitÅ * grossRate > > <URL: http://www.aivosto.com/vbtips/charsets-7bit.html> > > > Over the last several days from reading this thread (and variations > > thereof), l've seen several extended characters that I have no clue on > > how to reproduce on my keyboard. I haven't embraced extended character > > sets yet, which means I still think of ASCII characters as being 0 > > through 255 (8-bit). > > But Latin-1 is on your fingertips? ¡Qué bueno! Entonces sabes dónde > están las teclas españolas, ¿no? Thanks to this (sub)thread Ive added a new section: "Lemma: 7=8" here http://blog.languager.org/2014/04/unicode-and-unix-assumption.html All contributors gratefully acknowledged!
[toc] | [prev] | [next] | [standalone]
| From | Jussi Piitulainen <jussi.piitulainen@helsinki.fi> |
|---|---|
| Date | 2016-05-26 09:54 +0300 |
| Message-ID | <lf5k2ihjomi.fsf@ling.helsinki.fi> |
| In reply to | #109134 |
Rustom Mody writes:
> On Wednesday, May 25, 2016 at 4:18:02 PM UTC+5:30, Marko Rauhamaa wrote:
...
>> instead of ASCII, national 7-bit character set variants were being
>> used. For example, you might see Pascal code like this:
>>
>> ä return the net å
>> ret := grossÄunitÅ * grossRate
>>
>> <URL: http://www.aivosto.com/vbtips/charsets-7bit.html>
...
> Thanks to this (sub)thread Ive added a new section: "Lemma: 7=8" here
> http://blog.languager.org/2014/04/unicode-and-unix-assumption.html
There may be a small inaccuracy at the point where you refer to
Latin[1-15]. There are 15 parts to ISO-8859, numbered from 1 to 16 (with
part 12 abandoned), but their numbers are not in synch with the Latin-N
nicknames. In particular, Latin-9 is 8859-15, while 8859-9 is Latin-5.
Some of the 8859-N are not Latin-anything.
https://en.wikipedia.org/wiki/ISO/IEC_8859
This important detail should fit well in your narrative :)
(Regarding Marko's 7-bit example, some terminals gave us a choice: they
could be toggled to show those certain codes as {[\|]} or as letters, it
was just not possible to see both at the same time.)
[toc] | [prev] | [next] | [standalone]
| From | Rustom Mody <rustompmody@gmail.com> |
|---|---|
| Date | 2016-05-26 00:44 -0700 |
| Message-ID | <a4897fb3-c782-4f84-b7ab-4133f71fa48a@googlegroups.com> |
| In reply to | #109137 |
On Thursday, May 26, 2016 at 12:24:28 PM UTC+5:30, Jussi Piitulainen wrote: > Rustom Mody writes: > > > On Wednesday, May 25, 2016 at 4:18:02 PM UTC+5:30, Marko Rauhamaa wrote: > ... > >> instead of ASCII, national 7-bit character set variants were being > >> used. For example, you might see Pascal code like this: > >> > >> ä return the net å > >> ret := grossÄunitÅ * grossRate > >> > >> <URL: http://www.aivosto.com/vbtips/charsets-7bit.html> > ... > > Thanks to this (sub)thread Ive added a new section: "Lemma: 7=8" here > > http://blog.languager.org/2014/04/unicode-and-unix-assumption.html > > There may be a small inaccuracy at the point where you refer to > Latin[1-15]. There are 15 parts to ISO-8859, numbered from 1 to 16 (with > part 12 abandoned), but their numbers are not in synch with the Latin-N > nicknames. In particular, Latin-9 is 8859-15, while 8859-9 is Latin-5. > Some of the 8859-N are not Latin-anything. > > https://en.wikipedia.org/wiki/ISO/IEC_8859 > > This important detail should fit well in your narrative :) Suggestions incorporated -- tnx
[toc] | [prev] | [next] | [standalone]
| From | wxjmfauth@gmail.com |
|---|---|
| Date | 2016-05-26 00:52 -0700 |
| Message-ID | <b2ed3af8-3652-4d49-85c6-c71d0aead1d6@googlegroups.com> |
| In reply to | #109137 |
10 seconds to make Python 360a1 crash on my win platform with an "é"; a char belonging to the ISO-8859-1 coding scheme / characters set. Not bad for an idiot.
[toc] | [prev] | [next] | [standalone]
| From | Marko Rauhamaa <marko@pacujo.net> |
|---|---|
| Date | 2016-05-26 12:05 +0300 |
| Message-ID | <87bn3t8a0r.fsf@elektro.pacujo.net> |
| In reply to | #109134 |
Rustom Mody <rustompmody@gmail.com>:
> On Wednesday, May 25, 2016 at 4:18:02 PM UTC+5:30, Marko Rauhamaa wrote:
>> Christopher Reimer:
>>
>> > Back in the early 1980's, I grew up on 8-bit processors and latin-1 was
>> > all we had for ASCII.
>>
>> You really were very advanced. According to <URL:
>> https://en.wikipedia.org/wiki/ISO/IEC_8859-1#History>, ISO 8859-1 was
>> standardized in 1985. "Eight-bit-cleanness" became a thing in the early
>> 1990's.
>
> [...]
>
> Thanks to this (sub)thread Ive added a new section: "Lemma: 7=8"
> here http://blog.languager.org/2014/04/unicode-and-unix-assumption.html
A related anecdote from maybe 1990: I worked in a project team. We had
designed a data encoding format that made use of 8-bit character strings
(SunOS 4, Sparc, C). One morning a coworker stated that the standard
library's strcmp() seems to be buggy. He quickly solved the problem by
writing his own strcmp().
I found it surprising that a function so elementary as strcmp() could go
wrong so I took a look at its disassembly. It turns out Sun engineers
had heavily optimized the function. In particular, if both strings were
32-bit-aligned, the loop was carried out using clever 32-bit integer
operations.
Only they had made a mistake. Their algorithm checked these bits of an
integer result:
31 24 16 8 0
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
^ ^ ^ ^
While they *should* have checked these positions:
31 24 16 8 0
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
^ ^ ^ ^
As a result of their bug, every fourth position of the string had its
high-order bit ignored for strcmp. In particular, '\200' was treated as
an end-of-string marker.
The fix was obvious: check bit 32. However, 32-bit integers don't have a
bit 32, which explains the oversight. Luckily, the 33th bit was readily
available in the CPU's carry flag so the optimization could be salvaged
easily.
I sent a complimentary report to Sun Microsystems' customer service. I
got an email back stating we were out of support and they wouldn't be
talking to us. I thought, ok, their loss, and we went happily forward
with our naïve, two-line strcmp() replacement.
Some three months later, the same customer service rep sent another
email confirming the finding and thanking us for reporting it.
Marko
[toc] | [prev] | [next] | [standalone]
| From | Random832 <random832@fastmail.com> |
|---|---|
| Date | 2016-05-29 14:41 -0400 |
| Message-ID | <mailman.28.1464547309.1839.python-list@python.org> |
| In reply to | #109144 |
On Thu, May 26, 2016, at 05:05, Marko Rauhamaa wrote: > 31 24 16 8 0 > +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ > | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ > ^ ^ ^ ^ How does someone write the constant "0x8101010" and not realize that something's deeply wrong with their logic? I hope however it was implemented made it less obvious than that.
[toc] | [prev] | [next] | [standalone]
| From | Marko Rauhamaa <marko@pacujo.net> |
|---|---|
| Date | 2016-05-29 22:01 +0300 |
| Message-ID | <87d1o4eliy.fsf@elektro.pacujo.net> |
| In reply to | #109240 |
Random832 <random832@fastmail.com>: > On Thu, May 26, 2016, at 05:05, Marko Rauhamaa wrote: >> 31 24 16 8 0 >> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ >> | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | >> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ >> ^ ^ ^ ^ > > How does someone write the constant "0x8101010" and not realize that > something's deeply wrong with their logic? I hope however it was > implemented made it less obvious than that. I don't know if the Sun Microsystems developer is around to answer the question. However, judge not lest ye be judged... Marko
[toc] | [prev] | [next] | [standalone]
| From | Dennis Lee Bieber <wlfraed@ix.netcom.com> |
|---|---|
| Date | 2016-05-23 20:07 -0400 |
| Message-ID | <mailman.40.1464048453.20402.python-list@python.org> |
| In reply to | #109001 |
On Mon, 23 May 2016 09:53:12 -0600, Ian Kelly <ian.g.kelly@gmail.com>
declaimed the following:
>
>So 13th century European merchants would have been entirely incapable
>of cutting a cheese wheel in half in order to accommodate a customer
>who didn't the whole thing?
>
Cutting a cheese wheel in half requires no number crunching... Simple
geometric bisection.
Now... Figuring out how many pfennig to charge for that half wheel...
THAT requires number crunching <G>
--
Wulfraed Dennis Lee Bieber AF6VN
wlfraed@ix.netcom.com HTTP://wlfraed.home.netcom.com/
[toc] | [prev] | [next] | [standalone]
| From | Chris Angelico <rosuav@gmail.com> |
|---|---|
| Date | 2016-05-24 10:11 +1000 |
| Message-ID | <mailman.42.1464048690.20402.python-list@python.org> |
| In reply to | #109001 |
On Tue, May 24, 2016 at 10:07 AM, Dennis Lee Bieber <wlfraed@ix.netcom.com> wrote: > Now... Figuring out how many pfennig to charge for that half wheel... > THAT requires number crunching <G> Nah, you just take the number of pfennig you would have charged, and charge that many halbpfennig instead. At least, that's what you'd do in the Grand Duchy ruled over by the miserly Rudolph. ChrisA
[toc] | [prev] | [next] | [standalone]
| From | Steven D'Aprano <steve@pearwood.info> |
|---|---|
| Date | 2016-05-24 02:59 +1000 |
| Message-ID | <574336f5$0$1600$c3e8da3$5496439d@news.astraweb.com> |
| In reply to | #108996 |
On Tue, 24 May 2016 12:29 am, Ben Bacarisse wrote: > Ian Kelly <ian.g.kelly@gmail.com> writes: > >> On Mon, May 23, 2016 at 2:09 AM, Steven D'Aprano >> <steve+comp.lang.python@pearwood.info> wrote: >>> Are you saying that the Egyptians, Babylonians and Greeks didn't know >>> how to work with fractions? >>> >>> http://mathworld.wolfram.com/EgyptianFraction.html >>> >>> http://nrich.maths.org/2515 >>> >>> Okay, it's not quite 4000 years ago. Sometimes my historical sense of >>> the distant past is a tad inaccurate. Shall we say 2000 years instead? >> >> Those links give dates of 1650 BC and 1800 BC respectively, so I'd say >> your initial guess was closer. > > Right, but this is to miss the point. Let's say that 4000 years have > defined 1/3 to be one third, but Python 3 (as do many programming > languages) defines 1/3 to be something very very very very close to one > third, and *that* idea is very very very very new! It's unfortunate > that the example in this thread does not illustrate the main problem of > shifting to binary floating point, because 1/2 happens to be exactly > representable. That's not really the point. I acknowledge that floats do not represent all rational numbers (a/b) exactly. Neither do decimal floats -- most school children will learn that 0.333333333333 is not 1/3 exactly, and anyone who has used a calculator will experience calculations that give (say) 0.999999999 or 1.0000000001 instead of 1. And you know what? *People cope.* For all the weirdness of floating point, for all the rounding errors and violations of mathematical properties, floating point maths is *still* the best way to perform numerical calculations for many purposes. In fact, even IEEE-754 arithmetic, which is correctly rounded and therefore introduces the least possible rounding error, is sometimes "too good" -- people often turn to GPUs instead of CPUs for less accurate but faster bulk calculations. The point is, most people wouldn't really care that much whether 1/3 returned a binary 0.3333333333, or decimal 0.3333333333, or an exact rational fraction 1/3. Most people wouldn't care too much if they got 32-bits of precision or 64, or 10 decimal places or 18. When cutting (say) a sheet of paper into three equal pieces, they are unlikely to be able to measure and cut with an accuracy better than 1/2 of a millimeter, so 15 decimal places is overkill. But one thing is certain: very few people, Jon Ribbens being one of them, expects 1/3 to return 0. And that is why Python changed the meaning of the / operator: because using it for integer division was deeply unpopular and a bug magnet. -- Steven
[toc] | [prev] | [next] | [standalone]
| From | Jon Ribbens <jon+usenet@unequivocal.co.uk> |
|---|---|
| Date | 2016-05-23 17:09 +0000 |
| Message-ID | <slrnnk6egu.krr.jon+usenet@wintry.unequivocal.co.uk> |
| In reply to | #109009 |
On 2016-05-23, Steven D'Aprano <steve@pearwood.info> wrote: > But one thing is certain: very few people, Jon Ribbens being one of them, > expects 1/3 to return 0. And that is why Python changed the meaning of > the / operator: because using it for integer division was deeply unpopular > and a bug magnet. Making it return floats is also a bug magnet, just for more subtle bugs that are harder to diagnose.
[toc] | [prev] | [next] | [standalone]
| From | Chris Angelico <rosuav@gmail.com> |
|---|---|
| Date | 2016-05-24 03:33 +1000 |
| Message-ID | <mailman.28.1464024837.20402.python-list@python.org> |
| In reply to | #109012 |
On Tue, May 24, 2016 at 3:09 AM, Jon Ribbens <jon+usenet@unequivocal.co.uk> wrote: > On 2016-05-23, Steven D'Aprano <steve@pearwood.info> wrote: >> But one thing is certain: very few people, Jon Ribbens being one of them, >> expects 1/3 to return 0. And that is why Python changed the meaning of >> the / operator: because using it for integer division was deeply unpopular >> and a bug magnet. > > Making it return floats is also a bug magnet, just for more subtle > bugs that are harder to diagnose. See my earlier post. There are four broadly-viable options: int, float, Fraction, Decimal. *Every one of them* is a bug magnet in one way or another. Which kind of bug would you like? * 1235678678/3 == 411892892 * (1/3) + (1/3) + (1/3) != 1 * x != x + 0 * useless reprs after a few rounds of addition Take your pick. :) By the way, did you know that Python has support for fraction literals? Just put this at the top of your code: import fractions; f = fractions.Fraction(1) and then you can use the special "tagged literal" syntax, like with special forms of string literal: >>> f*22/7 + f*2/11 Fraction(256, 77) There's even a short-hand form for the common case where the numerator is 1: >>> f/2 + f/3 Fraction(5, 6) Very handy, particularly interactively. :) ChrisA
[toc] | [prev] | [next] | [standalone]
| From | Jon Ribbens <jon+usenet@unequivocal.co.uk> |
|---|---|
| Date | 2016-05-23 17:57 +0000 |
| Message-ID | <slrnnk6hb4.krr.jon+usenet@wintry.unequivocal.co.uk> |
| In reply to | #109013 |
On 2016-05-23, Chris Angelico <rosuav@gmail.com> wrote: > On Tue, May 24, 2016 at 3:09 AM, Jon Ribbens ><jon+usenet@unequivocal.co.uk> wrote: >> On 2016-05-23, Steven D'Aprano <steve@pearwood.info> wrote: >>> But one thing is certain: very few people, Jon Ribbens being one of them, >>> expects 1/3 to return 0. And that is why Python changed the meaning of >>> the / operator: because using it for integer division was deeply unpopular >>> and a bug magnet. >> >> Making it return floats is also a bug magnet, just for more subtle >> bugs that are harder to diagnose. > > See my earlier post. There are four broadly-viable options: int, > float, Fraction, Decimal. *Every one of them* is a bug magnet in one > way or another. Which kind of bug would you like? The simplest one - isn't that obvious from what I've already said?
[toc] | [prev] | [next] | [standalone]
| From | Chris Angelico <rosuav@gmail.com> |
|---|---|
| Date | 2016-05-24 04:14 +1000 |
| Message-ID | <mailman.31.1464027279.20402.python-list@python.org> |
| In reply to | #109017 |
On Tue, May 24, 2016 at 3:57 AM, Jon Ribbens <jon+usenet@unequivocal.co.uk> wrote: > On 2016-05-23, Chris Angelico <rosuav@gmail.com> wrote: >> On Tue, May 24, 2016 at 3:09 AM, Jon Ribbens >><jon+usenet@unequivocal.co.uk> wrote: >>> On 2016-05-23, Steven D'Aprano <steve@pearwood.info> wrote: >>>> But one thing is certain: very few people, Jon Ribbens being one of them, >>>> expects 1/3 to return 0. And that is why Python changed the meaning of >>>> the / operator: because using it for integer division was deeply unpopular >>>> and a bug magnet. >>> >>> Making it return floats is also a bug magnet, just for more subtle >>> bugs that are harder to diagnose. >> >> See my earlier post. There are four broadly-viable options: int, >> float, Fraction, Decimal. *Every one of them* is a bug magnet in one >> way or another. Which kind of bug would you like? > > The simplest one - isn't that obvious from what I've already said? Gotcha. You're advocating Fraction, which has no bugs whatsoever. Of course, it doesn't give you any more numbers than int gives you [1], but at least it doesn't restrict you to crazy things like only fifty-three significant digits [2] in its binary representation. And it's really easy to work with; performance is predictable (it's just two integers, and we know that the performance of integers is predictable), and they're easy to eyeball. ChrisA [1] Rationals and integers are both "countably infinite" - there are as many of each as there are counting numbers, odd numbers, prime numbers, squares, Fibonacci numbers, and dates in the Julian calendar. And dates that nerds didn't get because they were too busy proving which things are countably infinite and which aren't. [2] The number of the Love Bug. This is probably significant.
[toc] | [prev] | [next] | [standalone]
| From | Random832 <random832@fastmail.com> |
|---|---|
| Date | 2016-05-23 13:44 -0400 |
| Message-ID | <mailman.29.1464025463.20402.python-list@python.org> |
| In reply to | #109012 |
On Mon, May 23, 2016, at 13:33, Chris Angelico wrote: > and then you can use the special "tagged literal" syntax, like with > special forms of string literal: > > >>> f*22/7 + f*2/11 > Fraction(256, 77) I like the infix fraction literal syntax better: 22/f/7 + 2/f/11.
[toc] | [prev] | [next] | [standalone]
| From | Ian Kelly <ian.g.kelly@gmail.com> |
|---|---|
| Date | 2016-05-23 11:52 -0600 |
| Message-ID | <mailman.30.1464026021.20402.python-list@python.org> |
| In reply to | #109012 |
On Mon, May 23, 2016 at 11:44 AM, Random832 <random832@fastmail.com> wrote: > On Mon, May 23, 2016, at 13:33, Chris Angelico wrote: >> and then you can use the special "tagged literal" syntax, like with >> special forms of string literal: >> >> >>> f*22/7 + f*2/11 >> Fraction(256, 77) > > I like the infix fraction literal syntax better: 22/f/7 + 2/f/11. Sadly, the postfix syntax 22/7**f is a total failure.
[toc] | [prev] | [next] | [standalone]
| From | Alan Evangelista <alanoe@linux.vnet.ibm.com> |
|---|---|
| Date | 2016-05-23 15:06 -0300 |
| Message-ID | <mailman.39.1464047887.20402.python-list@python.org> |
| In reply to | #109012 |
On 05/23/2016 02:52 PM, Ian Kelly wrote: > On Mon, May 23, 2016 at 11:44 AM, Random832 <random832@fastmail.com> wrote: >> On Mon, May 23, 2016, at 13:33, Chris Angelico wrote: >>> and then you can use the special "tagged literal" syntax, like with special forms of string >>> literal: >>>>>> f*22/7 + f*2/11 >>> Fraction(256, 77) >> I like the infix fraction literal syntax better: 22/f/7 + 2/f/11. > Sadly, the postfix syntax 22/7**f is a total failure. It seems this discussion has nothing to do with for/while else anymore.... I suggest you rename the subject.
[toc] | [prev] | [next] | [standalone]
| From | Steven D'Aprano <steve@pearwood.info> |
|---|---|
| Date | 2016-05-24 12:15 +1000 |
| Message-ID | <5743b93e$0$1589$c3e8da3$5496439d@news.astraweb.com> |
| In reply to | #109012 |
On Tue, 24 May 2016 03:09 am, Jon Ribbens wrote:
> On 2016-05-23, Steven D'Aprano <steve@pearwood.info> wrote:
>> But one thing is certain: very few people, Jon Ribbens being one of them,
>> expects 1/3 to return 0. And that is why Python changed the meaning of
>> the / operator: because using it for integer division was deeply
>> unpopular and a bug magnet.
>
> Making it return floats is also a bug magnet, just for more subtle
> bugs that are harder to diagnose.
Floating point arithmetic does contain traps for the unwary, sometimes very
subtle ones. But they aren't *bugs* -- they're inherent in the nature of
floating point arithmetic.
Using / for integer division is a bug magnet. See my response to
the "Interfacing a dynamic shared library gives me different results in 2.7
versus 3.5" thread:
https://mail.python.org/pipermail/python-list/2016-May/709330.html
The old way of using / was a bug magnet, because people would write code
like this:
def harmonic_mean(values):
n = len(values)
total = sum(1/x for x in values)
return n/total
and test it with floats:
py> harmonic_mean([1.0, 2.0, 4.0])
1.7142857142857142
which matches the exact result of 12/7. And then some day somebody sneaks in
an integer by mistake, and the result goes completely to hell:
py> harmonic_mean([1.0, 2, 4.0])
2.4
Changing / to perform true division slays this particular bug magnet,
without introducing any new ones.
Floats themselves are an abstraction for real mathematical arithmetic.
(Perhaps a better term is "reification".) And for most purposes, they work
well-enough, especially with IEE-754 arithmetic. You can write a lot of
naive maths code treating floats as if they were exact Real numbers, and
with a few judicious tweaks to your printing routines, nobody will know the
difference.
But all abstractions (and reifications) leak:
http://www.joelonsoftware.com/articles/LeakyAbstractions.html
and floats are no exception. But what are you going to do? Use integer
maths? You still have to deal with rounding error.
In Australia, we have an 11% consumption tax, the GST. I cannot tell you how
many times I've needed to add a 1 cent "Rounding" amount on invoices to get
the results to work out correctly. E.g. if an item costs $17 including tax,
then you have a choice in rounding the tax-free cost down to $15.31 or up
to $15.32, depending on the rounding mode, which in turn gives you the
tax-inclusive cost of either $16.99 or $17.01. Either way you need a one
cent adjustment.
If you use integer maths, it always rounds down:
py> 1700*100//111 # $17.00/1.11 calculated in cents
1531
py> 1531*111//100
1699
(Reminds me of using Forth without a floating point stack.) The right
solution is actually to use a Decimal format, or a correctly rounded
IEEE-754 integer format. But even that will still leak somewhere.
Using integers in this case is not only *harder* than using floats, but it's
more likely to go wrong. Because integer division always rounds down,
errors accumulate faster than with floats, where calculations will be
correctly rounded to minimize the error.
--
Steven
[toc] | [prev] | [next] | [standalone]
| From | Jon Ribbens <jon+usenet@unequivocal.co.uk> |
|---|---|
| Date | 2016-05-24 10:54 +0000 |
| Message-ID | <slrnnk8ctb.krr.jon+usenet@wintry.unequivocal.co.uk> |
| In reply to | #109039 |
On 2016-05-24, Steven D'Aprano <steve@pearwood.info> wrote: > On Tue, 24 May 2016 03:09 am, Jon Ribbens wrote: >> On 2016-05-23, Steven D'Aprano <steve@pearwood.info> wrote: >>> But one thing is certain: very few people, Jon Ribbens being one of them, >>> expects 1/3 to return 0. And that is why Python changed the meaning of >>> the / operator: because using it for integer division was deeply >>> unpopular and a bug magnet. >> >> Making it return floats is also a bug magnet, just for more subtle >> bugs that are harder to diagnose. > > Floating point arithmetic does contain traps for the unwary, sometimes very > subtle ones. But they aren't *bugs* -- they're inherent in the nature of > floating point arithmetic. You seem to be repeatedly changing your mind as to which behaviours are "bugs" and which are not. I didn't say that floating point is buggy (whatever that would even mean), I said that using it attracts bugs due to people misunderstanding how it works. > In Australia, we have an 11% consumption tax, the GST. I cannot tell you how > many times I've needed to add a 1 cent "Rounding" amount on invoices to get > the results to work out correctly. Indeed. Using floats for currency calculations is one of the many traps they present, and an excellent example of why their use should not be encouraged. > E.g. if an item costs $17 including tax, then you have a choice in > rounding the tax-free cost down to $15.31 or up to $15.32, I very much doubt that you have any such choice - it will usually be specified by the tax regulations. The correct way to do currency stuff is either integers or Decimal. > Using integers in this case is not only *harder* than using floats, but it's > more likely to go wrong. Because integer division always rounds down, > errors accumulate faster than with floats, where calculations will be > correctly rounded to minimize the error. You are falling into the float trap again. This is not how you do accounting.
[toc] | [prev] | [next] | [standalone]
| From | Steven D'Aprano <steve@pearwood.info> |
|---|---|
| Date | 2016-05-25 03:44 +1000 |
| Message-ID | <574492f9$0$1600$c3e8da3$5496439d@news.astraweb.com> |
| In reply to | #109054 |
On Tue, 24 May 2016 08:54 pm, Jon Ribbens wrote: > On 2016-05-24, Steven D'Aprano <steve@pearwood.info> wrote: >> On Tue, 24 May 2016 03:09 am, Jon Ribbens wrote: >>> On 2016-05-23, Steven D'Aprano <steve@pearwood.info> wrote: [...] >> In Australia, we have an 11% consumption tax, the GST. I cannot tell you >> how many times I've needed to add a 1 cent "Rounding" amount on invoices >> to get the results to work out correctly. > > Indeed. Using floats for currency calculations is one of the many > traps they present, and an excellent example of why their use should > not be encouraged. How do you know the software uses floats? I haven't told you the name of the accounting software I use. It is proprietary software, so the source code is unavailable. Unless you work for the company in question, I doubt you would know what implementation they use. But worse, you ignored my example where I showed that using integer arithmetic also generates the same kind of off by one cent errors. >> E.g. if an item costs $17 including tax, then you have a choice in >> rounding the tax-free cost down to $15.31 or up to $15.32, > > I very much doubt that you have any such choice - it will usually > be specified by the tax regulations. This is not a matter about the GST legislation. It is a matter of mathematics that using integer or fixed point arithmetic is vulnerable to the same sorts of rounding errors as floating point arithmetic. (Using integers is equivalent to fixed point arithmetic with an implicit decimal point.) > The correct way to do currency stuff is either integers or Decimal. You're repeating my words back at me. I already said that. >> Using integers in this case is not only *harder* than using floats, but >> it's more likely to go wrong. Because integer division always rounds >> down, errors accumulate faster than with floats, where calculations will >> be correctly rounded to minimize the error. > > You are falling into the float trap again. This is not how you do > accounting. Did you look at the code I showed? I'm not using floats. I'm using integers, counting in cents. If you're just going to automatically gainsay everything I say without even reading what I say first, well, you're no John Cleese. -- Steven
[toc] | [prev] | [next] | [standalone]
Page 9 of 15 — ← Prev page 1 … 7 8 [9] 10 11 … 15 Next page →
Back to top | Article view | comp.lang.python
csiph-web