Path: csiph.com!usenet.pasdenom.info!news.albasani.net!feeder.erje.net!eu.feeder.erje.net!xlned.com!feeder3.xlned.com!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.001 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'python,': 0.02; 'subject:not': 0.03; 'cpython': 0.05; 'interpreter.': 0.07; 'linux,': 0.07; 'suddenly': 0.07; 'tkinter': 0.07; 'bindings': 0.09; 'pages.': 0.09; "system's": 0.09; 'python': 0.11; 'windows': 0.15; 'database).': 0.16; 'fine.': 0.16; 'guilty': 0.16; 'libraries.': 0.16; 'notably': 0.16; 'python-based': 0.16; 'subject:python3': 0.16; 'trivially': 0.16; 'wrote:': 0.18; 'module': 0.19; 'small,': 0.19; 'things.': 0.19; 'not,': 0.20; 'example': 0.22; 'issue.': 0.22; 'install': 0.23; 'header:User- Agent:1': 0.23; 'adds': 0.24; "shouldn't": 0.24; '(or': 0.24; 'least': 0.26; 'header:In-Reply-To:1': 0.27; 'installed': 0.27; 'generally': 0.29; "doesn't": 0.30; '(like': 0.30; 'said,': 0.30; 'serve': 0.31; "d'aprano": 0.31; 'overhead': 0.31; 'steven': 0.31; 'stuff': 0.32; 'quite': 0.32; 'core': 0.34; 'but': 0.35; 'received:google.com': 0.35; 'add': 0.35; 'there': 0.35; "i'll": 0.36; 'should': 0.36; 'message-id:@gmail.com': 0.38; 'server': 0.38; 'to:addr:python-list': 0.38; 'anything': 0.39; 'expect': 0.39; 'itself': 0.39; 'subject:" ': 0.39; 'to:addr:python.org': 0.39; 'how': 0.40; 'even': 0.60; 'most': 0.60; "you're": 0.61; 'back': 0.62; "you've": 0.63; 'such': 0.63; 'places': 0.64; 'repeat': 0.74; '3.3.1': 0.84; '9.1': 0.84; 'freebsd': 0.84; 'premature': 0.84; 'besides,': 0.93 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; bh=jsGG9iqyazQ4xkUdhCFwoXM/kKstnwi0JeUgCxSMwFo=; b=Ay6WDSluOV87ab2Ucizhum746u9oxibCzRZenSqcSJ29JBwNBbS1txEVO4Frh4SlKu kgaTDF/WQof2FkHSd4l38qo9CY9bZIacNZaoawSv3gcwI7Enwwk/Qz7ulTReD9hmJAC6 dD8XwuOASY7kXVXtGkjLQNYzvMn9gA2uNIoMbw//Bq7kqNSrvFQonq7rNfXES8aUh3Kf 6RNFyatYf/plwQi17H17X04UB96k3I2z16F1Zbl0TsjmsxuRuMNKX6AJ4Ec18NsDZ5It V1zBWITEzE5tjjG1q5FMiSHLDjYEK8RMcJMdbNPWay1qJKok4i/GwQadgqwKMtpS5eLq 5xVg== X-Received: by 10.50.73.65 with SMTP id j1mr7984385igv.49.1366618101120; Mon, 22 Apr 2013 01:08:21 -0700 (PDT) Date: Mon, 22 Apr 2013 03:08:24 -0500 From: Andrew Berg User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: "comp.lang.python" Subject: Re: Ubuntu package "python3" does not include tkinter References: <9ba1d90b-1a69-4e5a-8a9e-574009b0bdf3@fs2g2000pbd.googlegroups.com> <5174b515$0$29872$c3e8da3$5496439d@news.astraweb.com> <5174e407$0$29872$c3e8da3$5496439d@news.astraweb.com> In-Reply-To: <5174e407$0$29872$c3e8da3$5496439d@news.astraweb.com> X-Enigmail-Version: 1.5.1 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: 19 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1366618110 news.xs4all.nl 2170 [2001:888:2000:d::a6]:54444 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:44041 On 2013.04.22 02:17, Steven D'Aprano wrote: > I think that if you are worrying about the overhead of the tkinter > bindings for Python, you're guilty of premature optimization. The tkinter > package in Python 3.3 is trivially small, under 2 MB. > > Besides, how far do we go? Do we expect people to install (say): > > python3-copy > > so that those who don't need the copy module don't have to install it? Much of the stdlib doesn't rely on anything but the core interpreter. tkinter by itself is not the issue. As you said, the bindings are tiny. However, in order to be usable, it requires quite a few things - most notably X. On desktop Linux, this is already installed, but on server systems, it generally is not (or at least shouldn't be in most cases). Going back to my example of a web server using a Python-based framework, I'll repeat that there is no reason such a system should have X even installed in order to serve web pages. Even on a lean, mean server machine, CPython requires only a few extra libraries. Add tkinter, and suddenly you have to install a LOT of things. If you plan to actually use tkinter, this is fine. If not, you've just added a lot of stuff that you don't need. This adds unnecessary overhead in several places (like your package system's database). -- CPython 3.3.1 | Windows NT 6.2.9200 / FreeBSD 9.1