Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:61971 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 49935 invoked from network); 2 Aug 2012 16:56:40 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 2 Aug 2012 16:56:40 -0000 Authentication-Results: pb1.pair.com header.from=leight@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=leight@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.216.170 as permitted sender) X-PHP-List-Original-Sender: leight@gmail.com X-Host-Fingerprint: 209.85.216.170 mail-qc0-f170.google.com Received: from [209.85.216.170] ([209.85.216.170:37262] helo=mail-qc0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 78/9B-21438-641BA105 for ; Thu, 02 Aug 2012 12:56:39 -0400 Received: by qcmt36 with SMTP id t36so6431666qcm.29 for ; Thu, 02 Aug 2012 09:56:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=Msei87ImeyMYycYkoQ/gy5fQnCfs7YNdzOuEtolR0zs=; b=ZaVrm3RwKWkxsSyA8Vv3po4FI4zqpUd2xbbY7em4VedfglaFa5x5VnCAeYE/N8r9Ok JQwEdA8jqdkR9yfLAPVDdFiKwJpqDjAkYTdsbc1vgL8KYpinQZxY9qL9eYzAFxu++nfh D1r4NsuR4zawsoQnaKLrwKNusKpSK3waEOWGD57fsim/PKgNYUC8SfuqxIS9caF27dp9 cQORo3e0Lg8wEN8xeNixai+Rjk0tS7aPHCH5SdxYWtl5UYkDCwtdjOmhQapOf/U09UuR OIQM3/DHHTCSNSxLCNXFSsxCRmFnxr52fhkbDIUXy07JcM6CeV20F6LXlnixGDDAeRIs veHA== MIME-Version: 1.0 Received: by 10.224.26.210 with SMTP id f18mr43235971qac.80.1343926595669; Thu, 02 Aug 2012 09:56:35 -0700 (PDT) Received: by 10.229.149.203 with HTTP; Thu, 2 Aug 2012 09:56:35 -0700 (PDT) Received: by 10.229.149.203 with HTTP; Thu, 2 Aug 2012 09:56:35 -0700 (PDT) In-Reply-To: References: Date: Thu, 2 Aug 2012 17:56:35 +0100 Message-ID: To: Yahav Gindi Bar Cc: PHP internals Content-Type: multipart/alternative; boundary=bcaec517ac9656cf9f04c64b4b09 Subject: Re: [PHP-DEV] Add runkit to PHP Runtime From: leight@gmail.com (Leigh) --bcaec517ac9656cf9f04c64b4b09 Content-Type: text/plain; charset=ISO-8859-1 On Aug 2, 2012 5:44 PM, "Yahav Gindi Bar" wrote: > > Hi, > > I don't know how to tag this kind of discussion (because it's not RFC > request). > I've interested in runkit PECL extension and think that it should be part > of the PHP core runtime. > > I do think that the implementation should be different and don't mind to > suggest my implementation as RFC, but firstly I wish to know if you think > that the core idea to be able to add extension methods to classes is good > idea, so I won't start to implement a new feature without a reason (I'd > start it but since I've saw runkit I think that we can discuss the idea > first). > > I think that a code similier to this will be great: > > class Foo { > public function foo() { } > } > > class Bar extensionfor Foo { > public function bar() { } > } > > (new Foo())->bar(); // execute Bar method > > I see many pros about this feature, and you can see it in C# and ObjC too. > Shall I open for it a wiki page and start RFC discussion? > What do you think? I think a lot of runtime features could be useful, but require tight integration to be "done right". Maybe a candidate for 6.0 features? I'd personally be interested in the ability to hook built-in functions and sandboxing. --bcaec517ac9656cf9f04c64b4b09--