Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:31367 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 5014 invoked by uid 1010); 2 Aug 2007 09:31:54 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 4996 invoked from network); 2 Aug 2007 09:31:53 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 2 Aug 2007 09:31:53 -0000 Authentication-Results: pb1.pair.com header.from=kenashkov@gmail.com; sender-id=pass; domainkeys=bad Authentication-Results: pb1.pair.com smtp.mail=kenashkov@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.132.245 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: kenashkov@gmail.com X-Host-Fingerprint: 209.85.132.245 an-out-0708.google.com Received: from [209.85.132.245] ([209.85.132.245:8961] helo=an-out-0708.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 45/81-22872-F34A1B64 for ; Thu, 02 Aug 2007 05:30:53 -0400 Received: by an-out-0708.google.com with SMTP id c18so88367anc for ; Thu, 02 Aug 2007 02:30:22 -0700 (PDT) DKIM-Signature: a=rsa-sha1; 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; b=lNnFweKFhtXTbSViU7/rYsyit6mfWuViuPirrq7Y9aowhd+nUAnzZhlyxWTFxv1F//vD4ZLMHMQSTRyq/W0qAdscswCiz/SP1Zy6BKq1fQ5RJ581NlOjzLT6dc0TiTTBoInbAFWftWUprnYkvz3HJVXzIMcHWwsidwWcXKLhVHQ= 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=E1HFoj4v1olcZtTXHGNri84sJaxsurj7+xa2C1Yy2Tq4sIpCi3U53U7Tki7iwBBUCgfpfsykXw9IFjNWL/Yf/enw4D5/c+A7cgWXmxzSoO8vUTXQjTU0qCNSRE5y79mLJ74RFx7uIl4XGfFAPbyeQAxWe730KBA/2OQffsLrM+U= Received: by 10.100.110.16 with SMTP id i16mr964919anc.1186047022526; Thu, 02 Aug 2007 02:30:22 -0700 (PDT) Received: by 10.100.166.5 with HTTP; Thu, 2 Aug 2007 02:30:22 -0700 (PDT) Message-ID: <261daaa10708020230w550b30d8qf587f4b6bc7afefc@mail.gmail.com> Date: Thu, 2 Aug 2007 09:30:22 +0000 To: "Lukas Kahwe Smith" Cc: "Derick Rethans" , "Andi Gutmans" , "=?UTF-8?Q?Johannes_Schl=C3=BCter?=" , "Etienne Kneuss" , internals@lists.php.net, "Ilia Alshanetsky" In-Reply-To: <46B18C41.5010408@pooteeweet.org> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_110716_1780451.1186047022450" References: <46AE49B3.2070100@php.net> <1185883035.23889.31.camel@johannes.nop> <698DE66518E7CA45812BD18E807866CE7C10BB@us-ex1.zend.net> <46B18C41.5010408@pooteeweet.org> Subject: Re: [PHP-DEV] Fix inconsistencies in OO calls From: kenashkov@gmail.com ("Vesselin Kenashkov") ------=_Part_110716_1780451.1186047022450 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline I agree with Derick and Lukas. I find the ways this patch proviedes to be much more "natural" and easy to learn (I personally was in a desparate need for $classname::everything and also was wondering why it is not implemented, and then I found the Reflection). I'm just php developer, and I do not have experiance with other languages, but still I think the way it is implemented in the patch is the "natural" way to do it. And if Reflection is slower and meant for introspection why to use it for this. Is there any specific consideration for using Reflection for this? Or was there a discussion about this topic earlier (can somebody point me to it)? +1 for the patch. Vesselin Kenashkov On 8/2/07, Lukas Kahwe Smith wrote: > > Derick Rethans wrote: > > On Wed, 1 Aug 2007, Andi Gutmans wrote: > > > >> This is not really a fix. When we worked on PHP 5 we deliberately > >> decided to relax on all the weird dynamic constructs which didn't > >> provide a lot of value for the majority of use-cases. Of course the > >> Reflection API was going to be the way to do these dynamic things in > >> future. It would also simplify the engine's code. The reason why those > >> first constructs work were for BC reasons. We didn't want to break > >> existing code but wanted to not add on top of this. > >> > >> While it may feel inconsistent I still prefer the existing path. Maybe > >> for PHP 6 we can even make an E_STRICT message for the old way which > >> refers you to the Reflection API? > > > > I think that'd be a bad idea. I don't see a problem with this patch at > > all, and why should people use reflection here? As you're always so much > > for BC, I find it strange that you're suggesting to remove something > > totally harmless and instead want people to force to use the > > slow Reflection API which is meant for introspection... > > I agree its harmless and easy to learn. Moreover I do not see the > benefit of using the Reflection API instead. > > @Andi: Could you explain to us why you think that this sort of thing > should best be done through the Reflection API? > > regards, > Lukas > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > ------=_Part_110716_1780451.1186047022450--