Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:47718 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 50423 invoked from network); 1 Apr 2010 19:41:18 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 1 Apr 2010 19:41:18 -0000 Authentication-Results: pb1.pair.com smtp.mail=stas@zend.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=stas@zend.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 63.205.162.117 as permitted sender) X-PHP-List-Original-Sender: stas@zend.com X-Host-Fingerprint: 63.205.162.117 us-mr1.zend.com Received: from [63.205.162.117] ([63.205.162.117:41051] helo=us-mr1.zend.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id FD/21-44965-DD6F4BB4 for ; Thu, 01 Apr 2010 14:41:18 -0500 Received: from us-gw1.zend.com (us-ex1.zend.net [192.168.16.5]) by us-mr1.zend.com (Postfix) with ESMTP id E2C6543CF0; Thu, 1 Apr 2010 12:40:19 -0700 (PDT) Received: from [192.168.16.93] ([192.168.16.93]) by us-gw1.zend.com with Microsoft SMTPSVC(6.0.3790.3959); Thu, 1 Apr 2010 12:41:14 -0700 Message-ID: <4BB4F6DB.2040901@zend.com> Date: Thu, 01 Apr 2010 12:41:15 -0700 Organization: Zend Technologies User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.9) Gecko/20100317 Lightning/1.0b1 Thunderbird/3.0.4 MIME-Version: 1.0 To: Ralph Schindler CC: internals References: <4BB4EC2F.1020502@smashlabs.com> <4BB4F16B.7020402@zend.com> <4BB4F556.6090708@smashlabs.com> In-Reply-To: <4BB4F556.6090708@smashlabs.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 01 Apr 2010 19:41:14.0701 (UTC) FILETIME=[4A389FD0:01CAD1D3] Subject: Re: [PHP-DEV] On constructors: BC Break and Class compiler Improvements From: stas@zend.com (Stanislav Malyshev) Hi! >> I don't like this. The behavior should not depend on other methods >> being defined. What if you refactored the class and moved the ctor out >> to the parent - and the you get a nasty surprise of filter() suddenly >> becoming new ctor? > > Consider this idea a band-aid. It would basically allow for us to move > forward in the 5.x branch with backwards compatibility until 6.x drops > and PHP4 style constructors can go away forever. No, that's a pretty bad band-aid. I'd not be comfortable with such kludge being there, esp. when we are just establishing a new style for namespaced code. > In general, it seems like method names of the same as the class name > should *NOT* be marked as the class constructor if they are static. Maybe, but that's seems to be too subtle distinction to have, and in the light of the previous issue (not having it be ctor ever) it doesn't matter anyway :) -- Stanislav Malyshev, Zend Software Architect stas@zend.com http://www.zend.com/ (408)253-8829 MSN: stas@zend.com