Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!news-transit.tcx.org.uk!rt.uk.eu.org!newsfeed.xs4all.nl!newsfeed6.news.xs4all.nl!xs4all!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.01; 'languages,': 0.03; 'operator': 0.04; '(except': 0.05; 'behave': 0.07; 'terry': 0.07; 'python': 0.08; 'integers': 0.09; 'am,': 0.12; 'binary': 0.13; 'mathematics': 0.13; '"does': 0.16; 'happy,': 0.16; 'insist': 0.16; 'nick': 0.16; 'reedy': 0.16; 'subject:syntax': 0.16; 'cc:addr:python-list': 0.16; 'wrote:': 0.18; 'stick': 0.18; '(e.g.,': 0.19; 'programming': 0.21; 'tells': 0.21; 'header:In-Reply-To:1': 0.22; 'defined': 0.24; 'writes:': 0.25; '(and': 0.28; 'concern': 0.28; 'convention': 0.29; 'problem': 0.29; 'cc:addr:python.org': 0.29; 'url:wiki': 0.29; 'generally': 0.30; 'turned': 0.30; 'arithmetic': 0.30; 'concern.': 0.30; 'operation.': 0.30; 'porting': 0.30; '(the': 0.30; 'does': 0.32; 'dependent': 0.32; 'there': 0.33; 'probably': 0.34; 'all.': 0.34; 'conventions': 0.34; 'languages': 0.35; 'trouble': 0.35; 'cc:2**1': 0.36; 'but': 0.37; 'received:org': 0.38; 'some': 0.38; 'put': 0.38; 'url:en': 0.39; 'talk': 0.39; 'url:org': 0.39; 'goes': 0.39; 'extend': 0.39; "it's": 0.40; 'third': 0.40; 'carry': 0.62; 'choose': 0.62; 'devices': 0.63; 'respect': 0.67; 'strange': 0.68; 'reply-to:no real name:2**0': 0.72; 'bodies': 0.73; 'header:Reply-to:1': 0.84; 'way)': 0.91 X-Quarantine-ID: X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "Cc" To: Jussi Piitulainen From: Nick Dokos Subject: Re: Verbose and flexible args and kwargs syntax In-Reply-To: Message from Jussi Piitulainen of "12 Dec 2011 18:52:49 +0200." References: Organization: HPCS X-Mailer: MH-E 8.3; nmh 1.3; GNU Emacs 24.0.90 Date: Mon, 12 Dec 2011 12:58:09 -0500 Sender: nick@dokosmarshall.org Cc: python-list@python.org X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: nicholas.dokos@hp.com 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: 38 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1323713224 news.xs4all.nl 6921 [2001:888:2000:d::a6]:49039 X-Complaints-To: abuse@xs4all.nl Xref: x330-a1.tempe.blueboxinc.net comp.lang.python:17068 Jussi Piitulainen wrote: > Terry Reedy writes: > > On 12/12/2011 5:59 AM, Jussi Piitulainen wrote: > > > > > Past experience in mathematics newsgroups tells me > > > that some mathematicians do not accept the existence of any remainder > > > operator at all. > > > > Even though they carry hour/minute/second remindering devices on their > > bodies and put year/month/day remaindering devices on their wall? > > 'Twould be strange indeed! > > They recognize modular arithmetic but for some reason insist that > there is no such _binary operation_. But as I said, I don't understand > their concern. (Except the related concern about some programming > languages, not Python, where the remainder does not behave well with > respect to division.) They are probably arguing that it's uniquely defined only on ZxN and that there are different conventions to extend it to ZxZ (the programming languages problem that you allude to above - although I don't know what you mean by "does not behave well wrt division"). See http://en.wikipedia.org/wiki/Remainder If you choose one convention and stick to it, it becomes a well-defined binary operation. C99 goes one way, python goes a different way (and mathematics textbooks generally go a third way) and they are all happy, as long as they don't try to talk to each other (e.g., porting C99 programs to python unthinkingly leads to trouble - duh). It was implementation dependent in old C (whatever the hardware would give you), which predictably - with 20-20 hindsight - turned out to be a Very Bad Idea. Nick PS Z = integers, N = non-negative integers