Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:32911 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 74787 invoked by uid 1010); 22 Oct 2007 12:51:49 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 74768 invoked from network); 22 Oct 2007 12:51:49 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 22 Oct 2007 12:51:49 -0000 Authentication-Results: pb1.pair.com smtp.mail=malterisio777@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=malterisio777@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 64.233.162.237 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: malterisio777@gmail.com X-Host-Fingerprint: 64.233.162.237 nz-out-0506.google.com Received: from [64.233.162.237] ([64.233.162.237:45314] helo=nz-out-0506.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 86/6A-32256-3EC9C174 for ; Mon, 22 Oct 2007 08:51:48 -0400 Received: by nz-out-0506.google.com with SMTP id x7so427724nzc for ; Mon, 22 Oct 2007 05:51:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; bh=2E09DIE/+sGMf5jMeA5yu3VsvV2mb4LbTKfbQYi1f+M=; b=DhcbSl5Mln44CQLHMw2x5JU4GjN89PjHaECgvLAm4h+ngdP47Xcn3zQ4to/kxWIEMgtl/e9cPxsLcq4e4gvGx8m8DL7rOn9GM6pgHVUy/mqlVL+kv1Hh+hc8yosdJMmelUT5SwfnbIf4i62NtHkhYx9wMdDSF6PnrPR6eaasq1M= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; b=ewURdIA606j71NIdPE01pNzgT2qNu+hvfxV7zmCeX6fB02kjT6eMJNo8ct0YuT0LMsgMXhPQsUHChhf2Wfd27vXmd27pxVyEOdJlQnvSBsJpvIXol3vbNYUdtRvo/UJ/bfkbk0u8DAHN9JQdSqcNdHWl+Gn729UPN7H58tdcnXg= Received: by 10.114.199.1 with SMTP id w1mr5408101waf.1193057502778; Mon, 22 Oct 2007 05:51:42 -0700 (PDT) Received: by 10.115.90.8 with HTTP; Mon, 22 Oct 2007 05:51:42 -0700 (PDT) Message-ID: <52dbac0f0710220551u519fe772l7a3d4f111b5127f4@mail.gmail.com> Date: Mon, 22 Oct 2007 09:51:42 -0300 To: "Lars Strojny" Cc: internals@lists.php.net In-Reply-To: <1192887594.3854.8.camel@localhost> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_13062_8960191.1193057502773" References: <1192887594.3854.8.camel@localhost> Subject: Re: [PHP-DEV] T_INTERFACE and T_ABSTRACT as valid class names From: malterisio777@gmail.com ("Martin Alterisio") ------=_Part_13062_8960191.1193057502773 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline The following is just an opinion from an user and should be considered as such. You should consider that the PEAR way of naming classes was the nasty workaround that the namespaces is trying to solve. Therefore, just trying to make the language fit your needs so you can still use that nasty workaround into the new feature is not smart. It's like moving one step forward, two backward. You have namespaces now, and you want to use them? Forget about PEAR style and refactor the damn framework if necessary. It's more consistent and elegant if you use the right name for a class (Abstract or Interface is just too vague): namespace Zend::Db; class AbstractDb { ... } namespace Zend::Db::Adapter; class AdapterInterface { ... } 2007/10/20, Lars Strojny : > > Hi, > > I've already opened a feature request (#43048) but I feel, that there > need to be a discussion on that topic. The problem is, that the current > pseudo-namespacing used by a huge number of projects (PEAR-style, with > underscores and the related file organisation), could not be easily > ported to namespaces, as the name "Interface" and "Abstract" is not a > valid classname. So something like ... > > namespace Zend::Db; > class Abstract {...} > > ... will not work. Same for ... > > namespace Zend::Db::Adapter; > interface Interface {...} > > Nevertheless it would break some syntax highlighting libraries or maybe > the tokenizer extension, I would propose to allow at least "Abstract" > and "Interface" as a class/interface name. This would make porting to > the namespace methodology much easier (I see it quite plainly, a lot of > people would develop cripple names like Intrfce or Abstrct just to make > the PHP parser happy). > > cu, Lars > > ------=_Part_13062_8960191.1193057502773--