Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:72688 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 8169 invoked from network); 18 Feb 2014 17:36:44 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 18 Feb 2014 17:36:44 -0000 Authentication-Results: pb1.pair.com smtp.mail=johannes@schlueters.de; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=johannes@schlueters.de; sender-id=unknown Received-SPF: error (pb1.pair.com: domain schlueters.de from 217.114.215.10 cause and error) X-PHP-List-Original-Sender: johannes@schlueters.de X-Host-Fingerprint: 217.114.215.10 mail.experimentalworks.net Received: from [217.114.215.10] ([217.114.215.10:53227] helo=mail.experimentalworks.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id E4/A5-16937-A2A93035 for ; Tue, 18 Feb 2014 12:36:42 -0500 Received: from [192.168.2.31] (ppp-93-104-31-240.dynamic.mnet-online.de [93.104.31.240]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: johannes@schlueters.de) by mail.experimentalworks.net (Postfix) with ESMTPSA id 60CA342938; Tue, 18 Feb 2014 18:37:20 +0100 (CET) To: Ralph Schindler Cc: internals@lists.php.net In-Reply-To: <530384A3.7040209@ralphschindler.com> References: <1392661082.3990.265.camel@guybrush> <530278EE.3000008@ralphschindler.com> <1392671871.3990.303.camel@guybrush> <53028096.9040603@ralphschindler.com> <1392675539.3990.345.camel@guybrush> <530384A3.7040209@ralphschindler.com> Content-Type: text/plain; charset="UTF-8" Date: Tue, 18 Feb 2014 18:36:36 +0100 Message-ID: <1392744996.3990.634.camel@guybrush> Mime-Version: 1.0 X-Mailer: Evolution 2.30.3 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] my take on PHP 6, part 2 From: johannes@schlueters.de (Johannes =?ISO-8859-1?Q?Schl=FCter?=) On Tue, 2014-02-18 at 10:04 -0600, Ralph Schindler wrote: > > >> > >> You're assuming the target implementation is trivial, or even possible. > > > > I know extensions are needed. Still I think PHP is powerful and > often (often != always) fast enough. > > You're right for sure. By and large, the argument of the extension > vs. > userland debate is far less technical and more social/cost-benfit > driven than anything else. PHP itself could change some very minor > technical details in the engine (like enabling dl() for example), that > would completely shift the way people build and manage projects (and > their dependencies). > This is *not* a minor thing. My initial mail in this sub-thread listed the pure minimum of things to solve. dl() is useless if PHP crashes on following requests as an extension didn't clean up while unloading or loading fails as the operating system didn't clean up fully. Yes, dl() right now won't directly break with some extensions on some operating systems ... but there are too many fragile pieces for serious production use - that's why we limited dl(). If there is somebody with knowledge about runtime linking, loading and unloading they are very welcome to see how to make it stable and where to limit PHP internal API. I'd love to get rid of global pecl installs but its unfortunately not a "minor technical detail"... hrm thinking about deployments etc. I think it is even more complicated as we'd have to define a clean stable API else upgrading etc becomes a mess ... johannes