Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:61979 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 78908 invoked from network); 2 Aug 2012 23:26:55 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 2 Aug 2012 23:26:55 -0000 Authentication-Results: pb1.pair.com smtp.mail=g.b.yahav@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=g.b.yahav@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.212.42 as permitted sender) X-PHP-List-Original-Sender: g.b.yahav@gmail.com X-Host-Fingerprint: 209.85.212.42 mail-vb0-f42.google.com Received: from [209.85.212.42] ([209.85.212.42:50445] helo=mail-vb0-f42.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id E3/03-61111-DBC0B105 for ; Thu, 02 Aug 2012 19:26:54 -0400 Received: by vbbfs19 with SMTP id fs19so100158vbb.29 for ; Thu, 02 Aug 2012 16:26:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=9XB9ORKU9TvEEozCEi1c5myzMHuaJDrjZFSGu5Rr3PI=; b=OcnXLtPFcsKZpXKaIHQzPUNYalF0II82JApMr5fWSWX5EH5mtUOA3McPyQ2Ts2Ize/ q0T5B/NCZC2Mlal/mW7Ti7X4vLiDz6KEL9O85DxokV1OgFVGwzNwlpjSX00ZPmKQdgXJ I0cAAXTpc3WToQOLGT3EJAyr0aLYd9ZsVvDxFdx7f0A9cxtZCeS0ULq5w2gK7dU9Nt+o xZ4C6AAJ/yPGR1oM7X9I1tWBX5OCtLCqdaWLpPYZMPC7MwgW7zRWDJVI9NbkqvKSFtEb Y/A2qBp0bY9UfiRHtsV9EI/wzr8HX1BQl2eomxfGcrLyuvDkK8DLW0StfaUkFPke1IHl XYTw== Received: by 10.58.4.232 with SMTP id n8mr873901ven.54.1343950011104; Thu, 02 Aug 2012 16:26:51 -0700 (PDT) MIME-Version: 1.0 Received: by 10.52.92.18 with HTTP; Thu, 2 Aug 2012 16:26:30 -0700 (PDT) In-Reply-To: References: Date: Fri, 3 Aug 2012 02:26:30 +0300 Message-ID: To: Sara Golemon Cc: Leigh , PHP internals Content-Type: multipart/alternative; boundary=047d7b66fcad01fcb904c650bfa2 Subject: Re: [PHP-DEV] Add runkit to PHP Runtime From: g.b.yahav@gmail.com (Yahav Gindi Bar) --047d7b66fcad01fcb904c650bfa2 Content-Type: text/plain; charset=ISO-8859-1 I do think that some of the runkit features should not be included in PHP core but I wish to focus on extending classes with extension methods, constants, traits and members. Just like all other complicated and powerful features in PHP, one should use them with a good reason and when he/she knows exacly what he/she is doing - but we should provide the tools and ability to do that - that's what I think.. I see the main usage for extension methods within frameworks and other big applications that allows third-party integration such as CMS, forums software etc. - in such kind of applications, extension methods can be very useful, and you can take for example the many usage of this in ASP.NET applications that uses this concept (even if we'll take Objective-C, you can find on the net many implementation of features for UI controls that was added via extension method since there's no OO based reason to create a child class - for example, many added method for setting background image to UIView type object as an extension method). I don't think that this features should remain in PECL package (that's the reason I've created this discussion) since frameworks and software that third-party users will use should not relay on PECL packages... many users who use frameworks and CMS use shared hosting enviorment and don't have permissions to install PECL packages - if we want to bring this feature and give such scripts to use this features we shall deeply integrate it to the core of PHP - just like I've suggested above, I think that a new keyword or syntax should be introduced for this usage. On Fri, Aug 3, 2012 at 2:22 AM, Sara Golemon wrote: > On Thu, Aug 2, 2012 at 4:17 PM, Leigh wrote: > >> Sandboxing: Complicated by the fact that it only works in a threaded > >> build, can't transfer all types (e.g. resource, complex objects), and > >> can't run concurrently. Until/unless these problems can be > >> meaningfully solved, I wouldn't consider it a functional > >> implementation. > > > > To me the "thread thing" feels like the dirty hack workaround > > _because_ it's in PECL, and this is the only option available. > > > In all seriousness, I'd love to hear how you'd do Sandboxing without > using the tsrm context hack I used in runkit. That approach had > nothing to do with being in PECL, it had to do with that being the > only mechanism available to swap globals in and out at will. > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > --047d7b66fcad01fcb904c650bfa2--