Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:21411 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 28277 invoked by uid 1010); 4 Jan 2006 14:00:38 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 28262 invoked from network); 4 Jan 2006 14:00:38 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 4 Jan 2006 14:00:38 -0000 X-Host-Fingerprint: 212.112.227.169 ipx11223.ipxserver.de Linux 2.5 (sometimes 2.4) (4) Received: from ([212.112.227.169:58905] helo=ipx11223.ipxserver.de) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id B4/48-34518-505DBB34 for ; Wed, 04 Jan 2006 09:00:37 -0500 Received: from localhost (localhost [127.0.0.1]) by ipx11223.ipxserver.de (Postfix) with ESMTP id C8C25DF00C4; Wed, 4 Jan 2006 15:00:36 +0100 (CET) Received: from ipx11223.ipxserver.de ([127.0.0.1]) by localhost (ipx11223 [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 02975-04; Wed, 4 Jan 2006 15:00:26 +0100 (CET) Received: from [127.0.0.1] (lsmith.home.cs.tu-berlin.de [130.149.150.67]) by ipx11223.ipxserver.de (Postfix) with ESMTP id 1E1F4DF0067; Wed, 4 Jan 2006 15:00:26 +0100 (CET) Message-ID: <43BBD4F6.6070506@php.net> Date: Wed, 04 Jan 2006 15:00:22 +0100 User-Agent: Thunderbird 1.5 (Windows/20051201) MIME-Version: 1.0 To: Stanislav Malyshev Cc: Marcus Boerger , php internals References: <20060103205728.GF26280@desario.homelinux.net> <7.0.0.16.2.20060103154506.043678e8@zend.com> <829348376.20060104010548@marcus-boerger.de> <1594973025.20060104122023@marcus-boerger.de> <43BBB6A0.1070800@php.net> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by somedaemon at backendmedia.com Subject: Re: [PHP-DEV] __call overload detection From: lsmith@php.net (Lukas Smith) Stanislav Malyshev wrote: > LS>>I think its obvious that you can implement things in userland or inside the > LS>>engine. The main advantage of doing it inside the engine is that it then > LS>>becomes the standard way of doing things, where as with userland its likely > LS>>that several competing "standards" will emerge. Not because of real > LS>>advantages, but just because of lack of a central standard. > > I don't see anything there to be implemented in the engine. What exactly > you want the engine to do? Only thing I can see is to support it in > is_callable() - I'm not sure if it worth it but we can do so that > is_callable would check if the object has __callable function or > implements interface CallableCheck or whatever and if it has, call it. > Though I'm not sure it really worth the hassle - all three people that > need it in real world probably already implemented it in userland anyway. well in theory is_callable could also be called before __call() to save people from having to duplicate the logic from __callable() and to have the engine trigger the error. that is what i meant and like i said i do not necessarily suggest doing that. regards, Lukas