Path: csiph.com!usenet.pasdenom.info!news.redatomik.org!newsfeed.xs4all.nl!newsfeed4a.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.004 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'python,': 0.02; 'languages,': 0.04; 'languages.': 0.04; 'c++,': 0.07; 'puts': 0.07; 'oop': 0.09; 'subset': 0.09; 'sure,': 0.09; 'cc:addr:python- list': 0.11; 'python': 0.11; 'bounds': 0.16; 'enough.': 0.16; "guido's": 0.16; 'math,': 0.16; 'objects.': 0.16; 'elements': 0.16; 'language': 0.16; 'wrote:': 0.18; 'meant': 0.20; 'appears': 0.22; 'cc:addr:python.org': 0.22; "aren't": 0.24; 'certainly': 0.24; 'either.': 0.24; 'new,': 0.24; 'skip': 0.24; 'math': 0.24; 'mon,': 0.24; 'cc:2**0': 0.24; '(for': 0.26; 'header:In-Reply- To:1': 0.27; 'idea': 0.28; 'point': 0.28; 'am,': 0.29; 'array': 0.29; 'generally': 0.29; 'message-id:@mail.gmail.com': 0.30; 'code': 0.31; '(maybe': 0.31; 'long.': 0.31; 'languages': 0.32; 'could': 0.34; "can't": 0.35; 'but': 0.35; 'received:google.com': 0.35; 'really': 0.36; '(e.g.,': 0.36; 'bought': 0.36; 'object,': 0.36; 'level': 0.37; 'little': 0.38; 'environment.': 0.39; 'skip:p 20': 0.39; 'even': 0.60; 'greatest': 0.60; 'truly': 0.60; 'most': 0.60; 'to:addr:gmail.com': 0.65; 'here': 0.66; 'side': 0.67; 'chicago,': 0.68; 'covers': 0.68; 'real-world': 0.68; 'fact,': 0.69; '10:11': 0.84; '2015': 0.84; 'cobol': 0.84; 'unbeatable': 0.84; 'afford': 0.91 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:content-transfer-encoding; bh=SqBAcde7kGJMkE4Z7jDIQjG4OF1Ns9rphltZhV/vyQo=; b=opD27y6p1rgkU7afMrO1CAc/xc3706acxiXZaMXENb5e38p7SBmzV29te1YN2cpTu0 mzj+JT6jDDUh86vl/Y7F1eoNRqdWARJSuptAnGxXnibmLP++4dzyG+oE44KOKhV1OPMX uF8YtH/ZAyOekRJgklBFIjQMXxfst8eI0JF/SVly5ozzb180lTAGYR2afzgDCYjmVNix DTwrRJ58BVHkR+ruPinH8Yk9bUIkYjglR5I53LcuoiU4VfXxcZ0ewxmdbq2eGcdHB6Py oNB4LclZT9plzadr5NjNxlQRKz1TPn9VlVdwkaulllhwzp0GABttHoBGjrRcgIQiznZy dQSw== MIME-Version: 1.0 X-Received: by 10.60.101.195 with SMTP id fi3mr2683401oeb.65.1431359312809; Mon, 11 May 2015 08:48:32 -0700 (PDT) In-Reply-To: References: <6f508ac2-0765-46b2-9408-955e7c811127@googlegroups.com> <55504803$0$13004$c3e8da3$5496439d@news.astraweb.com> Date: Mon, 11 May 2015 10:48:32 -0500 Subject: Re: anomaly From: Skip Montanaro To: zipher Cc: Python Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable 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: 28 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1431359322 news.xs4all.nl 2947 [2001:888:2000:d::a6]:38246 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:90404 On Mon, May 11, 2015 at 10:11 AM, zipher wrote: > I also bought the idea of everything as an object, it has a unbeatable pu= rity to it. But we won't ever get to the point were OOP is like the purity= of math because the greatest utility of OOP is working with real-world dat= a. And that real-world puts bounds on the otherwise abstract purity in whi= ch a language is theoretically capable. Did someone here say it would? Sure, OOP isn't as pure as math, but most object-oriented languages aren't pure OO languages, either. (Maybe Smalltalk?) In Python, when you want to manipulate bazillions of numbers, you use numpy, pandas, etc. In C++, you code in the C subset it (still) contains when you don't want objects. The practicality side of things suggests that even though everything-is-an-object isn't perfect, it may be good enough. People/projects/companies generally can't afford to follow every change that blows through their environment. That's why (for example), COBOL lasted so long. In fact, I suspect you could still make a good living writing COBOL, if you really wanted to. (Searching indeed.com for "COBOL" in Chicago, IL gave me 81 hits.) Python was never meant to be "pure". It has, by Guido's own admission, borrowed ideas from many other languages. Very little in Python is truly new, certainly not its object model. At the user level everything appears to be an object, but not everything is under the covers (e.g., numeric elements of array objects). Skip