Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:26496 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 51804 invoked by uid 1010); 10 Nov 2006 22:24:03 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 51789 invoked from network); 10 Nov 2006 22:24:03 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 10 Nov 2006 22:24:03 -0000 Authentication-Results: pb1.pair.com smtp.mail=php-php-dev@m.gmane.org; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=news@sea.gmane.org; sender-id=pass Received-SPF: pass (pb1.pair.com: domain m.gmane.org designates 80.91.229.2 as permitted sender) X-PHP-List-Original-Sender: php-php-dev@m.gmane.org X-Host-Fingerprint: 80.91.229.2 main.gmane.org Linux 2.5 (sometimes 2.4) (4) Received: from [80.91.229.2] ([80.91.229.2:53398] helo=ciao.gmane.org) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 68/F0-27611-10CF4554 for ; Fri, 10 Nov 2006 17:24:02 -0500 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1Giemr-0001M7-NK for internals@lists.php.net; Fri, 10 Nov 2006 23:23:49 +0100 Received: from bi01p1.nc.us.ibm.com ([129.33.49.251]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 10 Nov 2006 23:23:49 +0100 Received: from pmuellr by bi01p1.nc.us.ibm.com with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 10 Nov 2006 23:23:49 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: internals@lists.php.net Date: Fri, 10 Nov 2006 17:23:38 -0500 Lines: 32 Message-ID: References: <4554AE0D.4080600@caedmon.net> <4554B9B5.5090305@caedmon.net> <20061110182358.GB20309@bantha> <4554F5C7.1080705@tonybibbs.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Gmane-NNTP-Posting-Host: bi01p1.nc.us.ibm.com User-Agent: Thunderbird 1.5.0.8 (Macintosh/20061025) In-Reply-To: <4554F5C7.1080705@tonybibbs.com> Sender: news Subject: Re: [PHP-DEV] Namespaces in PHP 6 - ++$take From: pmuellr@yahoo.com (Patrick Mueller) Tony Bibbs wrote: > While I could munge the class names in one or more packages as you > suggest then I'm in maintainability hell because when I need to update > one of the other packages (for security, features or bugfixes) you have > to do the name munging again. > > C'mon, that ain't right. Next excuse? Sorry. I'm assuming here that you are giving your class names 'prefixed' names. Like Zend Framework is doing. For what it's worth, >10 years ago we were in this same position with Smalltalk; and specifically, IBM Smalltalk. Tradtional Smalltalk does not have namespaces. And neither did ours - we were traditional :-) So, we used product prefixes. We had a relatively hugemongous class library, a fairly large, distributed team, and just a handful of prefixes. It was 'ugly', to some extent, but it did work. Later, we added namespaces. I never used 'em. Not sure if anyone did. We added them because the masses roared for them. I don't think they used 'em either. Because they were kinda horky. (Be careful what you ask for, because you might just get it) Point is, if you're doing OO in the usual fashion, the only time you need to reference globally scoped names is when you reference the class itself, which is when you invoke constructors, or call static methods. Instance method invocation was used waaaaaay more often than those two. -- Patrick_Mueller@us.ibm.com IBM PHP Community Architect, IBM Research Triangle Park