Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!feeder.news-service.com!newsfeed.xs4all.nl!newsfeed5.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.001 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'skip': 0.04; 'defaults': 0.07; 'python': 0.08; 'declarations': 0.09; "everyone's": 0.09; 'oh,': 0.09; 'sub': 0.09; 'am,': 0.13; 'received:209.85.214.174': 0.13; 'received:mail-iw0-f174.google.com': 0.13; 'stored': 0.13; 'wrote:': 0.15; 'from:addr:rosuav': 0.16; 'from:name:chris angelico': 0.16; 'gotta': 0.16; 'hierarchy': 0.16; 'rantingrick': 0.16; 's/he': 0.16; 'screen,': 0.16; 'mon,': 0.16; 'driver': 0.19; 'variable': 0.21; 'header:In-Reply-To:1': 0.22; 'implicit': 0.23; "python's": 0.25; 'windows': 0.26; 'received:209.85.214': 0.28; 'all,': 0.28; 'message-id:@mail.gmail.com': 0.28; 'variables': 0.29; 'object': 0.30; 'chris': 0.32; 'actually': 0.33; 'to:addr :python-list': 0.34; 'on,': 0.34; 'things': 0.34; 'some': 0.37; 'received:google.com': 0.38; 'received:209.85': 0.38; 'user': 0.38; 'subject:: ': 0.38; 'should': 0.39; 'to:addr:python.org': 0.39; 'received:209': 0.40; 'where': 0.40; 'choose': 0.61; 'forget': 0.61; 'address': 0.61; 'stop': 0.61; 'subject:!': 0.67; 'day!': 0.68; 'day': 0.69; 'habit': 0.84 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=eszlh7olESJQZMGTgl3K9xxMBi9p6mAVtUsoQm7yKAQ=; b=WyVUzcYQtVCeBMtTH+S68TxAcUTVj0sOohyTNRAnVWa3ISlLrqJ4HIyRdsowCwXO8s ah/8Mn8OV7pENkper4OSIT1mK49VStbv0eq5kZLZ2i6F2GPf+paDYHvF8GcEf8i+614F 43OIVweGSaMXP0/kOJyqvVPhSZb5eYKSAf+Ek= MIME-Version: 1.0 In-Reply-To: References: Date: Mon, 4 Jul 2011 08:21:48 +1000 Subject: Re: Implicit initialization is EVIL! From: Chris Angelico To: python-list@python.org Content-Type: text/plain; charset=ISO-8859-1 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.12 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: 25 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1309731711 news.xs4all.nl 21830 [2001:888:2000:d::a6]:35856 X-Complaints-To: abuse@xs4all.nl Xref: x330-a1.tempe.blueboxinc.net comp.lang.python:8740 On Mon, Jul 4, 2011 at 8:11 AM, rantingrick wrote: > A new user should learn from day one the hierarchy of a GUI. > > -root window > -optional widgets > --optional sub windows > ---optional widgets > ---and on and on You're forgetting all the other crucial parts of the hierarchy. A new user should be forced to declare a Desktop that s/he wants the window on, and a Screen, and choose which video driver to use too! Implicit acceptance of defaults is EVIL! Oh, and while you're at it, Python's habit of letting you skip variable declarations is EVIL too. A new user should learn from day one that variables need to be stored somewhere, so Python should stop coddling its newbies and actually get them to do things right: var(0x14205359) x # Don't forget to provide an address where the object will be located x=42 After all, everyone's gotta learn about segfaults some day! Chris Angelico