Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.xs4all.nl!newsfeed1a.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.000 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'python.': 0.02; 'received:134': 0.05; 'subject:Python': 0.06; 'strict': 0.07; 'imply': 0.09; 'subject:language': 0.09; 'useless': 0.09; 'vast': 0.09; 'python': 0.11; 'language,': 0.12; 'assume': 0.14; 'language.': 0.14; 'changes': 0.15; 'different,': 0.16; 'keyword,': 0.16; 'restricting': 0.16; 'subject: \n ': 0.16; 'variations': 0.16; 'flexibility': 0.16; 'language': 0.16; 'wrote:': 0.18; 'code.': 0.18; "python's": 0.19; 'written': 0.21; 'programming': 0.22; 'header:User-Agent:1': 0.23; 'propose': 0.24; 'header:In-Reply-To:1': 0.27; 'subject:list': 0.30; "d'aprano": 0.31; 'steven': 0.31; 'languages': 0.32; 'another': 0.32; 'actual': 0.34; 'but': 0.35; 'changing': 0.37; 'to:addr:python- list': 0.38; 'does': 0.39; "couldn't": 0.39; 'to:addr:python.org': 0.39; 'enough': 0.39; 'such': 0.63; 'family': 0.73; 'subject:this': 0.83; 'pardon': 0.84 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AqAEAIieQ1OGuA9G/2dsb2JhbABZhyK+DoMOgTODGQEBAQQjVRELGAICBRYEBwICCQMCAQIBRRMIAod1qCucD4YUF4EpjUgWglmBSQEDmFyGO4wFgXGBQQ Date: Tue, 08 Apr 2014 09:03:34 +0200 From: Antoon Pardon User-Agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Icedove/24.4.0 MIME-Version: 1.0 To: python-list@python.org Subject: Re: Explanation of this Python language feature? [x for x in x for x in x] (to flatten a nested list) References: <9daf0806-02de-4447-964c-c8f8953c23e5@googlegroups.com> <53364327$0$29994$c3e8da3$5496439d@news.astraweb.com> <53365F55.2040302@gmail.com> <533836c4$0$29994$c3e8da3$5496439d@news.astraweb.com> <533e811a$0$29993$c3e8da3$5496439d@news.astraweb.com> <874n26su9f.fsf@elektro.pacujo.net> <53418644$0$29993$c3e8da3$5496439d@news.astraweb.com> <87txa643so.fsf@elektro.pacujo.net> <5341e7c6$0$29993$c3e8da3$5496439d@news.astraweb.com> <5342333e$0$11109$c3e8da3@news.astraweb.com> In-Reply-To: <5342333e$0$11109$c3e8da3@news.astraweb.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit 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: 21 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1396940622 news.xs4all.nl 2882 [2001:888:2000:d::a6]:55297 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:69834 On 07-04-14 07:10, Steven D'Aprano wrote: > >> Restricting the usage of Python's flexibility does not make it another >> language. It makes it the actual language that the vast majority of >> programs are written in and that people assume when reading code. > That's incorrect. If len were a keyword, and couldn't be shadowed or > replaced, it would be another language. That is true but in a useless meaning. With such a strict meaning of when a language is different, people programming python have been continuously changing programming language. However the changes seem to be gradual enough for people to continue speaking of python. So if we see python as a family of languages where some difference may produce variations while still speaking of the same language, I don't see why a change like you propose would fall into a category that would imply we are now speaking of an other language. -- Antoon Pardon