Path: csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!newsfeed.xs4all.nl!newsfeed3.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.073 X-Spam-Evidence: '*H*': 0.85; '*S*': 0.00; '(at': 0.04; 'literal': 0.09; 'overwrite': 0.09; 'subject:design': 0.09; 'subtle': 0.09; 'cc:addr:python-list': 0.11; 'python': 0.11; 'cc:name:python list': 0.16; 'dict': 0.16; 'hierarchy': 0.16; 'hierarchy*': 0.16; 'literal,': 0.16; 'mean,': 0.16; 'potential.': 0.16; 'really?': 0.16; 'relevant,': 0.16; 'subject:Language': 0.16; 'to:addr:pearwood.info': 0.16; "to:name:steven d'aprano": 0.16; 'tuple': 0.16; 'passing': 0.19; '>>>': 0.22; 'saying': 0.22; 'cc:addr:python.org': 0.22; 'simpler': 0.24; 'fine': 0.24; 'cc:2**0': 0.24; 'right.': 0.26; 'values': 0.27; 'header:In-Reply- To:1': 0.27; 'direction': 0.30; 'see,': 0.30; 'sets': 0.30; 'message-id:@mail.gmail.com': 0.30; "i'm": 0.30; '>>>>': 0.31; 'bunch': 0.31; 'directly,': 0.31; 'please.': 0.31; 'yourself.': 0.31; 'community': 0.33; 'everyone': 0.33; 'limitation': 0.33; 'not.': 0.33; 'comment': 0.34; 'noticed': 0.34; 'sense': 0.34; 'could': 0.34; 'problem': 0.35; 'agree': 0.35; 'no,': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'achieving': 0.36; 'limitations': 0.36; 'right?': 0.36; 'set.': 0.36; "didn't": 0.36; 'useful': 0.36; 'should': 0.36; 'list': 0.37; 'list.': 0.37; 'being': 0.38; 'depends': 0.38; 'little': 0.38; 'does': 0.39; 'changed': 0.39; 'how': 0.40; 'even': 0.60; 'slowly': 0.60; 'simply': 0.61; "you're": 0.61; 'back': 0.62; "you've": 0.63; 'making': 0.63; 'field': 0.63; 'more': 0.64; 'forward': 0.65; 'talking': 0.65; 'here': 0.66; 'between': 0.67; 'bottom': 0.67; 'importantly,': 0.68; 'obvious': 0.74; 'adapted': 0.84; 'collision.': 0.84; 'confusing': 0.84; 'dict,': 0.84; 'galaxies': 0.84; 'missing.': 0.84; 'obvious.': 0.84; 'standing': 0.84; 'tricky': 0.84; 'wanting': 0.93; 'washington': 0.93 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=huL/J8YVgp5xfOkT8q51UoK40BNzGlK9QHD2q1gJ2vg=; b=qgc+5i8FYRBlBtK1MW9qeymmO0RB9z5DrhjiFP79Jyon2AdYPlDLKJXsbsvoXkjcLx cSMLd2/A5YLo5Ly8kLNQY/D4sFediWiYgVdJDYZA3hsqyvP7cq8j5NVbgpWP5NZg3Okg Q8WlIkm/mWrOMeueuWOW9ZS8atkAXI97ZNVZkr+ddEUPy1tjI7VVYPZlRrWpOjAbPCB6 Zg95zgP+db2Jb+4Aaab+s0mL1GZ4YTfp6RE90q4UcbGa2H0nnI48zItDGfV5Y2gqqvgV v4vzKFIeIADCQS20VHktpm/uNq76EUd66NfKWnow8cazifxYZUEnDFu9j0UBNfUMPPNX exKg== MIME-Version: 1.0 X-Received: by 10.180.206.129 with SMTP id lo1mr703228wic.15.1379042601404; Thu, 12 Sep 2013 20:23:21 -0700 (PDT) In-Reply-To: <52315238$0$29999$c3e8da3$5496439d@news.astraweb.com> References: <522eb795$0$29999$c3e8da3$5496439d@news.astraweb.com> <5230ff66$0$29988$c3e8da3$5496439d@news.astraweb.com> <52315238$0$29999$c3e8da3$5496439d@news.astraweb.com> Date: Thu, 12 Sep 2013 20:23:21 -0700 Subject: Re: Language design From: Mark Janssen To: "Steven D'Aprano" Content-Type: text/plain; charset=ISO-8859-1 Cc: Python List 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: 75 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1379042609 news.xs4all.nl 15870 [2001:888:2000:d::a6]:47516 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:54097 >> Really? Are you saying you (and the community at-large) always derive >> from Object as your base class? > > Not directly, that would be silly. Silly? "Explicit is better than implicit"... right? >> But wait is it the "base" (at the bottom of the hierarchy) or is it the >> "parent" at the top? You see, you, like everyone else has been using >> these terms loosely, confusing yourself. > > Depends on whether I'm standing on my head or not. > > Or more importantly, it depends on whether I visualise my hierarchy going > top->down or bottom->up. Both are relevant, and both end up with the > *exact same hierarchy* with only the direction reversed. Ha, "only the direction reversed". That little directionality that you're passing by so blithely is the difference between whether you're talking about galaxies or atoms. Please. The simplicity of Python has seduced you into making an "equivocation" of sorts. It's subtle and no one in the field has noticed it. It crept in slowly and imperceptively. >> By inheriting from sets you get a lot of useful >> functionality for free. That you don't know how you could use that >> functionality is a failure of your imagination, not of the general idea. > > No you don't. You get a bunch of ill-defined methods that don't make > sense on dicts. They are not necessarily ill-defined. Keep in mind Python already chose (way back in 1.x) to arbitrary overwrite the values in a key collision. So this problem isn't new. You've simply adapted to this limitation without knowing what you were missing. >>>> 3) It used the set literal for dict, so that there's no obvious way to >>>> do it. This didn't get changed in Py3k. >>> >>> No, it uses the dict literal for dicts. >> >> Right. The dict literal should be {:} -- the one obvious way to do it. > > I don't agree it is obvious. It is as obvious as (,) being the empty tuple > or [,] being the empty list. You're just being argumentative. If there are sets as built-ins, then {:} is the obvious dict literal, because {} is the obvious one for set. You don't need [,] to be the list literal because there is no simpler list-type. >>> And the obvious way to form an empty set is by calling set(), the same >>> as str(), int(), list(), float(), tuple(), dict(), ... >> >> Blah, blah. Let me know when you got everyone migrated over to >> Python.v3. > > What does this have to do with Python 3? It works fine in Python 2. I mean, you're suggestions are coming from a "believer", not someone wanting to understand the limitations of python or whether v3 has succeeded at achieving its potential. >>> I don't even understand what you are talking about here. "[reference] >>> variables"? What does that mean? >> >> It's a just a tricky point, that I will wait to comment on. > > I'm looking forward to an explanation, as I'm intrigued. Well, wer'e here at junior-high. It will take some time.... -- MarkJ Tacoma, Washington