Path: csiph.com!goblin1!goblin.stu.neva.ru!uio.no!news.tele.dk!news.tele.dk!small.news.tele.dk!newsgate.cistron.nl!newsgate.news.xs4all.nl!nzpost1.xs4all.net!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.127 X-Spam-Level: * X-Spam-Evidence: '*H*': 0.75; '*S*': 0.00; 'patterns': 0.04; 'subject:Python': 0.05; 'mrab': 0.05; 'overflow': 0.07; 'received:gmx.net': 0.09; 'underlying': 0.09; 'languages.': 0.15; 'shooting': 0.16; 'sorts': 0.16; 'wrote:': 0.16; 'memory': 0.17; 'documented': 0.18; 'integer': 0.18; 'language': 0.19; 'changes': 0.20; 'algorithm': 0.20; 'c++,': 0.22; 'header:In-Reply-To:1': 0.24; 'header:User-Agent:1': 0.26; "doesn't": 0.26; 'point.': 0.27; 'idea': 0.28; 'went': 0.28; 'argue': 0.29; 'for,': 0.29; 'from:addr:gmx.com': 0.29; 'issues.': 0.29; 'shoot': 0.29; 'testing.': 0.29; 'code': 0.30; 'programmers': 0.30; 'error.': 0.31; 'language.': 0.32; 'suddenly': 0.33; 'languages': 0.34; 'running': 0.34; 'could': 0.35; 'done': 0.35; 'c++': 0.35; 'problem.': 0.35; 'but': 0.36; 'beginning': 0.36; 'smaller': 0.36; 'stock': 0.36; 'to:addr:python-list': 0.36; 'subject:: ': 0.37; 'received:10': 0.37; 'aspects': 0.37; 'wrong': 0.38; 'several': 0.38; 'end': 0.39; 'to:addr:python.org': 0.40; 'still': 0.40; 'provide': 0.61; 'discuss': 0.61; 'matter': 0.63; 'more': 0.63; 'different': 0.63; 'safe': 0.63; 'developed': 0.66; 'offering': 0.66; 'safety': 0.66; 'areas': 0.67; 'day': 0.67; 'dangerous': 0.70; 'power': 0.72; 'led': 0.72; 'demand': 0.79; 'abandon': 0.84; 'induce': 0.84; 'inherent': 0.84; 'nuclear': 0.84; 'plants.': 0.84; 'worth,': 0.84; 'dennis': 0.91; 'net.': 0.91; 'safer': 0.91; 'mistakes': 0.95 Date: Sat, 12 Sep 2015 22:57:59 +0100 From: Mario Figueiredo User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:25.7) Gecko/20150827 FossaMail/25.1.7 MIME-Version: 1.0 To: python-list@python.org Subject: Re: Python handles globals badly. References: <1eee075d-7073-4875-9e42-2e053ee59b41@googlegroups.com> <0784va15gme91mqvoasfub3hvu59ehpepl@4ax.com> <201509102219.14138.gheskett@wdtv.com> <55F3A602.50906@gmx.com> <8hk8va5uljr0oqv0nrj6u3q9j72vffl7b9@4ax.com> <55F45C4C.7070902@mrabarnett.plus.com> In-Reply-To: <55F45C4C.7070902@mrabarnett.plus.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:rky5Nj6ddoE/e+kvsKT45Vb9DWTmGxxcsEd/wjVsHZv85w9p8DE daBBUMkTK/ceE/z6L4mI1XjX7YG+FiAtxSOv7jdYcOtZDA1SyN9MJo8ddXfD9iWQGyadFHK FIGfz6isArNBmjNdmkfAqtVeHNSmEVg7jezsLv2c0SxXc4E9uVtLTK55qxjDJWlsYtCkJYw ++P7x5TLk3HRd+4aUoYBg== X-UI-Out-Filterresults: notjunk:1;V01:K0:t4J6V18iVv0=:S1Y3gq3Ka8CGu9HMj2uYwS gN5ZHyQRDvvqb6PuNDH7Q6PcuQzx/nY8+0vFiDSEDgKa+iHZgXhifTBTGn9yk0qn6/2IQhj5k ae0hTEq3sHhrM+XdD8+32kWe0mhCTgPZwRadwU0O3M16pAUp6N3iyiRGiEvEhCaQeFIR3PV5b T7kyd4VS/RcMufwN8uURftiASEsH7ediR0yUGXraqruANoIGt5KPuNm6M8UVW7bgZFM1h4Lxr mo3qJy7bbN8Vjkne1WbH09OEWY0uhqIOpB9mzpguEKvExjsjZgJZx0awuCd1aLaqstooQIhuv Z0bpfX/AWF1lgIK6IiF9LtwPWb+xdI9c86U/W0HYTxrl6dNbjbonj4JNanj6L7WFWX2Zwnwo7 o8Bw/spFHo3G/WHWdyE1cKC8f8T32uheC0LRSX5d1Xgk7tlcYqrUEV8LhfnIx3mY15V0zo/CE 4745BJN/arqL50yVSEHvfQ0hjN65mDxiLDAhVF2Q/3y6KwjzKrRKqM1qtD5wbhuG67Prl2t7X n3olisXAuVpsYWzBAOW4Y9dkTwyWuFQjrJarhp1fDgPxWaCVM86MEapPcrrewScV9ksiZchUM WIi7czKj/NIpdnCh/Xp8XXon0tW/oCSsGlqOxpb9gq8msY+RQ3ieuGKB7AKI/C/Zv7PmYx4j+ CAvaeARBErLe7s4DYq3tzl3/uR2NiBlVNPIMNl0jx3qN4Vw6MHsQbnoaMPj6JojL7QsrCwhmu kNyt/16uGy5PcFcHobQ/Z3jidf+ekSIZ8RotTA== X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.20+ Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 35 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1442095086 news.xs4all.nl 23760 [2001:888:2000:d::a6]:41152 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:96462 On 12-09-2015 18:09, MRAB wrote: > On 2015-09-12 17:29, Dennis Lee Bieber wrote: >> But no one had tested the algorithm with the rate of change the >> Ariane >> 5 could produce -- so an algorithm that was developed for, and safe with, >> the smaller Ariane suddenly went "something's wrong -- abandon ship" >> >> Nothing inherent in the language... >> > What would C++ have done in the same situation? Would Ariane still have > failed? Probably... > And that's exactly the point. C++, or Ada, for that matter have decades old documented best practices and code patterns to deal with those aspects of the language that can induce in error. Integer overflow is a well documented problem. And relying on it, is documented as a bad idea for several reasons, including the changes in the underlying system that eventually led to Ariane incident. For all that is worth, C++ issues with all sorts of overflows and unchecked memory are documented from the very first beginning of the language. Same with C and same with Ada own particular issues. A safe(r) language just presents different ways of shooting one's foot. We can discuss how much of a bad boy C++ is, but at the end of the day programers will just keep on make mistakes and eventually on those very areas the safer language doesn't provide a safety net. One can argue that by offering more ways to shoot one's foot, C and C++ are more dangerous to use than other considered safer languages. But that doesn't gel with the operative history of C or C++ that are running mission critical systems, from stock markets to nuclear power plants. These languages just demand a different breed of programmers and different methods of testing.