Path: csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed4.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.049 X-Spam-Evidence: '*H*': 0.90; '*S*': 0.00; 'static': 0.04; 'environments': 0.07; 'modified': 0.07; 'satisfy': 0.09; 'cc:addr :python-list': 0.11; 'python': 0.11; 'changes': 0.15; 'c++.': 0.16; 'compiler.': 0.16; 'coupling': 0.16; 'func': 0.16; 'haskell,': 0.16; 'java.': 0.16; 'subject:Case': 0.16; 'language': 0.16; 'wrote:': 0.18; 'code.': 0.18; 'typing': 0.19; 'seems': 0.21; '(in': 0.22; 'cc:addr:python.org': 0.22; "shouldn't": 0.24; 'java': 0.24; 'mon,': 0.24; 'cc:2**0': 0.24; 'header:In-Reply- To:1': 0.27; 'said,': 0.30; 'message-id:@mail.gmail.com': 0.30; "i'm": 0.30; 'url:mailman': 0.30; "d'aprano": 0.31; 'factor': 0.31; 'sep': 0.31; 'steven': 0.31; 'teams.': 0.31; 'another': 0.32; 'url:python': 0.33; '(e.g.': 0.33; 'except': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'c++': 0.36; 'opposed': 0.36; 'returning': 0.36; 'url:listinfo': 0.36; 'similar': 0.36; 'url:org': 0.36; 'so,': 0.37; 'sometimes': 0.38; 'pm,': 0.38; 'little': 0.38; 'extremely': 0.39; 'heard': 0.39; 'url:mail': 0.40; 'how': 0.40; 'days': 0.60; 'company': 0.60; 'mentioned': 0.61; 'matter': 0.61; 'back': 0.62; 'personal': 0.63; 'choose': 0.64; 'more': 0.64; 'world': 0.66; 'market': 0.66; 'between': 0.67; 'methodology': 0.68; 'nobody': 0.68; 'surprise': 0.74; 'topic,': 0.81; 'dozen': 0.91; 'increases': 0.91; 'joel': 0.91; 'to:addr:nobody': 0.96; '2013': 0.98 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=e12KW42JnycIHKFNAZbJ0BKqy2jf2mT98yB6vw2QUzs=; b=v0TXrXLCdZ1afIoZiOKIMbIhRxMTRcbSNB9G5/7IhmRqhqFlAcyuBankZNGTRPFPS/ vgYqCleTZlE77ckrmDu+UI2+bN4n+WGKTnwPe3Iv/xD5BxBRO/KO1mzmB7p8y1sjMIiD ZAgosvNBntWLaU91h4E+t5HjsJK3jtv9JASGW3YZJe3/BXhfz3OboslakSA2Ms2MFUH5 yjugR4VnIsOtMffZoWqhju5bbXr32bG3z0yFeX1dFh64tSMKarnNePQ1ll1Z6Y/nZQrt SNb9RbV6gFLMutELCh3L1Xh+RCvT16aRcFMEJBvzRgv705XoPKSBwaFja4lxbySw53E9 otcA== MIME-Version: 1.0 X-Received: by 10.52.187.65 with SMTP id fq1mr20934530vdc.13.1378172200746; Mon, 02 Sep 2013 18:36:40 -0700 (PDT) In-Reply-To: References: <8bc2f539-ae7a-4cd8-83c0-91449aecd616@googlegroups.com> <7xfvtnwsn9.fsf@ruckus.brouhaha.com> <52245df4$0$2743$c3e8da3$76491128@news.astraweb.com> Date: Mon, 2 Sep 2013 21:36:40 -0400 Subject: Re: A Pragmatic Case for Static Typing From: Joel Goldstick To: Nobody Content-Type: text/plain; charset=UTF-8 Cc: "python-list@python.org" X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 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: 31 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1378172203 news.xs4all.nl 15940 [2001:888:2000:d::a6]:45838 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:53550 On Mon, Sep 2, 2013 at 9:10 PM, Nobody wrote: > On Mon, 02 Sep 2013 09:44:20 +0000, Steven D'Aprano wrote: > >> One factor I don't see very often mentioned is that static typing >> increases coupling between distant parts of your code. If func() changes >> from returning int to MyInt, everything that calls func now needs to be >> modified to accept MyInt, no matter how similar MyInt is to int. You have >> to make changes just to satisfy the compiler. > > Not if the language has type inference (e.g. Haskell, or C++ templates). > > -- > http://mail.python.org/mailman/listinfo/python-list My personal reason for working with python (dynamic typing) as opposed to Java or C++ is that (in general) I don't like company environments that use Java or C++. Its the world of huge software teams. Python seems to be more in vogue in smaller environments which suit my interests. I used to write in C and a little C++ back in the Borland C++ days (90s?). I'm not familiar with Haskell, except having heard the name, but I also know it isn't as popular in the job market as say python or ruby or C++ or Java. So, while I'm off topic, sometimes the reason to choose one methodology over another has to do less with the merits than on other factors. That said, python 'feels' extremely right to me. Having come from PHP for the last dozen years that shouldn't surprise anyone! -- Joel Goldstick http://joelgoldstick.com