Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:41144 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 99651 invoked from network); 16 Oct 2008 17:01:52 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 16 Oct 2008 17:01:52 -0000 Authentication-Results: pb1.pair.com smtp.mail=mls@pooteeweet.org; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=mls@pooteeweet.org; sender-id=unknown Received-SPF: error (pb1.pair.com: domain pooteeweet.org from 88.198.8.16 cause and error) X-PHP-List-Original-Sender: mls@pooteeweet.org X-Host-Fingerprint: 88.198.8.16 bigtime.backendmedia.com Linux 2.6 Received: from [88.198.8.16] ([88.198.8.16:54436] helo=bigtime.backendmedia.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 32/84-12818-F7377F84 for ; Thu, 16 Oct 2008 13:01:51 -0400 Received: from localhost (unknown [127.0.0.1]) by bigtime.backendmedia.com (Postfix) with ESMTP id DFFE3414400F; Thu, 16 Oct 2008 17:03:26 +0000 (UTC) X-Virus-Scanned: amavisd-new at backendmedia.com Received: from bigtime.backendmedia.com ([127.0.0.1]) by localhost (bigtime.backendmedia.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id g73mRPW13X2Y; Thu, 16 Oct 2008 19:03:26 +0200 (CEST) Received: from [192.168.0.151] (77-58-144-136.dclient.hispeed.ch [77.58.144.136]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: mls@pooteeweet.org) by bigtime.backendmedia.com (Postfix) with ESMTP id E32524144009; Thu, 16 Oct 2008 19:03:25 +0200 (CEST) Cc: Stanislav Malyshev , PHP Developers Mailing List Message-ID: To: Greg Beaver In-Reply-To: <48F772ED.3090001@chiaraquartet.net> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v929.2) Date: Thu, 16 Oct 2008 19:01:14 +0200 References: <48F653FF.5010106@chiaraquartet.net> <48F75FA1.7020505@zend.com> <0C55B977-3835-4CB0-A23B-8AA684B71C18@pooteeweet.org> <48F772ED.3090001@chiaraquartet.net> X-Mailer: Apple Mail (2.929.2) Subject: Re: [PHP-DEV] my last attempt at sanity with namespaces From: mls@pooteeweet.org (Lukas Kahwe Smith) On 16.10.2008, at 18:59, Greg Beaver wrote: > Lukas Kahwe Smith wrote: >> >> On 16.10.2008, at 17:37, Stanislav Malyshev wrote: >> >>> B. There's a huge problem with this proposal which you seem >>> consistently to ignore despite all my attempts to explain it. Failed >>> autoload on each call is BAD. Very bad. It is not cacheable, it >>> leads >>> to multiple disk accesses and it is absolutely undetectable to the >>> PHP user without the use of special tools. So making all existing >>> code contain this performance bomb unless you rewrite it is very >>> bad. >>> It's better to have this code fail and provide simple script to fix >>> it in automatic fashion. The fix you propose - writing use's - is >>> not >>> enough because as you noted later inertia would make users not to >>> use >>> this code and thus have huge performance hit - which most of them >>> even wouldn't know where it came from. >> >> first up i am a bit irritated by the use of the term "internal >> class", >> i guess you both mean to say "class in the global namespaces"? > no, we are talking about classes built into PHP such as Exception or > ArrayObject, not userspace classes without namespace. why are they different? also since they apparently are different, how does this all work when its not about an internal class, but a global useland class? as in what if in your example it would not be the Exception class, but a class called FooBar, which is defined in the global namespace in some userland code? regards, Lukas Kahwe Smith mls@pooteeweet.org