Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:28470 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 84244 invoked by uid 1010); 19 Mar 2007 23:03:23 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 84221 invoked from network); 19 Mar 2007 23:03:23 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 19 Mar 2007 23:03:23 -0000 Authentication-Results: pb1.pair.com smtp.mail=robert@interjinn.com; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=robert@interjinn.com; sender-id=unknown Received-SPF: error (pb1.pair.com: domain interjinn.com from 66.11.173.122 cause and error) X-PHP-List-Original-Sender: robert@interjinn.com X-Host-Fingerprint: 66.11.173.122 unknown Linux 2.5 (sometimes 2.4) (4) Received: from [66.11.173.122] ([66.11.173.122:58780] helo=blobule.interjinn.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 0E/E9-01604-7B61FF54 for ; Mon, 19 Mar 2007 18:03:20 -0500 Received: by blobule.interjinn.com (Postfix, from userid 2000) id 639415AD1FB; Mon, 19 Mar 2007 19:03:16 -0400 (EDT) To: Sean Coates Cc: Stanislav Malyshev , Wez Furlong , internals@lists.php.net In-Reply-To: <45FF064A.8030703@caedmon.net> References: <86478A67-DCA2-4000-9EF0-DA4338E8389B@omniti.com> <45FDF031.4010508@zend.com> <45FE2312.1050506@zend.com> <45FED6D9.8030307@caedmon.net> <45FEDAE5.2010309@zend.com> <45FEE396.7040905@caedmon.net> <0757BDEA-65F5-4123-B647-060DCA84B4B0@omniti.com> <45FEEF52.1060002@zend.com> <1174336464.24632.110.camel@blobule> <45FEF9A5.4050409@zend.com> <1174338801.24632.124.camel@blobule> <45FEFDCE.7050100@zend.com> <1174339527.24632.129.camel@blobule> <45FF064A.8030703@caedmon.net> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: InterJinn Date: Mon, 19 Mar 2007 19:03:15 -0400 Message-ID: <1174345396.24632.136.camel@blobule> Mime-Version: 1.0 X-Mailer: Evolution 2.8.1 Subject: Re: [PHP-DEV] PATCH: anonymous functions in PHP From: robert@interjinn.com (Robert Cummings) On Mon, 2007-03-19 at 17:53 -0400, Sean Coates wrote: > > I'm not arguing the preservation of the exact value of $rev when the > > anonymous function was created (as would be the case with a closure). > > I'm thinking of the variable being whatever is defined in the parent > > regardless. As in my proposal, the seek could search all the way up to > > the top in which case the $rev would be found if it had been defined as > > expected. At any rate, I guess this is diverging from the real > > discussion of anonymous functions :) > > If you've ever tried to hack on the source to anything that you didn't > write that also uses globals throughout (Gallery2, for example), you > know how hard it is to track down a single layer of scope that can be > defined [somewhere else]. > > Tracking this up the chain like a bubbled exception sounds like a > nightmare for debugging/comprehension, and IMO it's too magical. > > One layer of scope might be useful: $_PARENT ? > More than that, and my head starts to hurt. Well I did originally suggest defaulting to the parent scope with options for advanced users to climb higher :) Just because there are unwashed masses as Richard Lynch likes to call it, doesn't mean we all need to suffer their limitations. Cheers, Rob. -- .------------------------------------------------------------. | InterJinn Application Framework - http://www.interjinn.com | :------------------------------------------------------------: | An application and templating framework for PHP. Boasting | | a powerful, scalable system for accessing system services | | such as forms, properties, sessions, and caches. InterJinn | | also provides an extremely flexible architecture for | | creating re-usable components quickly and easily. | `------------------------------------------------------------'