Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.xs4all.nl!newsfeed2.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.072 X-Spam-Evidence: '*H*': 0.86; '*S*': 0.01; 'python,': 0.02; 'throws': 0.09; 'runs': 0.10; '"good': 0.16; 'loop.': 0.16; 'received:192.168.1.4': 0.16; 'relevant.': 0.16; 'subject:Programming': 0.16; 'subject:python': 0.16; 'stack': 0.19; 'proposed': 0.22; 'header:User-Agent:1': 0.23; 'either.': 0.24; 'values': 0.27; 'van': 0.27; 'header:In-Reply-To:1': 0.27; 'points': 0.29; "doesn't": 0.30; '(since': 0.31; 'produces': 0.31; 'trace': 0.31; 'writes:': 0.31; 'programmers': 0.33; 'but': 0.35; 'crazy': 0.36; 'error.': 0.37; 'two': 0.37; 'to:addr:python-list': 0.38; 'previous': 0.38; 'to:addr:python.org': 0.39; 'how': 0.40; 'information': 0.63; 'valuable': 0.63; 'hardly': 0.84; 'optimized.': 0.84; 'pardon': 0.84; 'received:195.238': 0.84; 'received:195.238.6': 0.84; 'received:belgacom.be': 0.84; 'received:isp.belgacom.be': 0.84; '2013,': 0.91 X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApMBAAjgSVJQyFq6/2dsb2JhbAANTMUOgUqDGgEBBDhAEQshFg8JAwIBAgFFEwYCArMPiiCJE49YFoQMA5d/lR8 Date: Mon, 30 Sep 2013 22:37:46 +0200 From: Antoon Pardon User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130922 Icedove/17.0.9 MIME-Version: 1.0 To: python-list@python.org Subject: Re: Functional Programming and python References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed 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: 20 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1380573473 news.xs4all.nl 15953 [2001:888:2000:d::a6]:39380 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:55113 Op 30-09-13 20:55, Piet van Oostrum schreef: > Franck Ditter writes: > >> Good approach of FP in Python, but two points make me crazy : >> 1. Tail recursion is not optimized. We are in 2013, why ? This is known technology (since 1960). >> And don't answer with "good programmers don't use recursion", this is bullshit. > > Tail recursion optimization throws away valuable stack trace information in case of an error. This is hardly relevant. Because what are we told to use instead of tail calls? We are told to use loops. But when you use a loop the stack trace doesn't contain the values of previous runs through the loop. So how valuable is that stack frame information when the proposed alternative doesn't produces it either. -- Antoon Pardon