Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:72666 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 4908 invoked from network); 17 Feb 2014 21:35:20 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 17 Feb 2014 21:35:20 -0000 Authentication-Results: pb1.pair.com smtp.mail=ralph@ralphschindler.com; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=ralph@ralphschindler.com; sender-id=unknown Received-SPF: error (pb1.pair.com: domain ralphschindler.com from 209.85.219.53 cause and error) X-PHP-List-Original-Sender: ralph@ralphschindler.com X-Host-Fingerprint: 209.85.219.53 mail-oa0-f53.google.com Received: from [209.85.219.53] ([209.85.219.53:62158] helo=mail-oa0-f53.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 01/38-64799-79082035 for ; Mon, 17 Feb 2014 16:35:20 -0500 Received: by mail-oa0-f53.google.com with SMTP id m1so18521877oag.12 for ; Mon, 17 Feb 2014 13:35:17 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :subject:references:in-reply-to:content-type :content-transfer-encoding; bh=ZI8CeRpVL8fT1CO3bT/c7jZg3Jc3E+ESf+Opvhtpu6g=; b=Xb+kSky53yroeXOBawK4/08v8MIJ/khMYejlWmxzJH+AnTM+dX5ADn0ffBOJFLWqQb W0R+rvaM/lWX3aEpKTgaIo4NTSjns4Hp4k6OhXcQxKmCVxsHmhJlYa9fC56ANAvpNjHt 4Km9nkmh3mhYCXnJErNGknpYmPaj451cVJ6ZxCHixqHqJOToM8ch/ZjZYONyOzW6mbcU iVKER2+uxtsHP3csYkgGat/mr7lpUNdZQpnzhhqR2DNybYEndxQCafAD+V/gdrhgZ0JB cyRejIxaUa4saLTAaQtHM6HSKiODDf7NsiUCPp6C/0RnrJOGl9bsPtzM4OfW4bW2HRkn I44A== X-Gm-Message-State: ALoCoQmkVhUK6PPZTSsGiYmMmWBBSth3lOgTOWQFeZT0wnphS7k3FjIDuAxCGWxJrW1RY8aV8XoJ X-Received: by 10.182.230.135 with SMTP id sy7mr22930013obc.24.1392672917065; Mon, 17 Feb 2014 13:35:17 -0800 (PST) Received: from [172.16.1.126] (ip174-73-14-247.no.no.cox.net. [174.73.14.247]) by mx.google.com with ESMTPSA id qh4sm51164254obc.4.2014.02.17.13.35.15 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 17 Feb 2014 13:35:15 -0800 (PST) Message-ID: <53028096.9040603@ralphschindler.com> Date: Mon, 17 Feb 2014 15:35:18 -0600 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.3.0 MIME-Version: 1.0 To: internals@lists.php.net References: <1392661082.3990.265.camel@guybrush> <530278EE.3000008@ralphschindler.com> <1392671871.3990.303.camel@guybrush> In-Reply-To: <1392671871.3990.303.camel@guybrush> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] my take on PHP 6, part 2 From: ralph@ralphschindler.com (Ralph Schindler) > And I want to remind about my typical opinion: We should try to require > as little extensions as possible and do as many things as possible (in a > usable way) in userland. If we spend time on making PHP faster we reduce > the need for extensions even more. You're assuming the target implementation is trivial, or even possible. In non-trivial libraries/implementations, you'll find developers chose to write their library in c/c++ b/c c and c++ are portable. Off the top of my head, an example of this would be mapnik. Currently, no good extension wrapping libmapnik exists, nor is there any spec to follow that would allow a php developer to replicate the usefulness of that library in userland php. Moreover, if someone were to be able to create a userland/1-1 implementation of it, they'd be hard pressed to keep up with that projects momentum in improving the baseline implementation in c++. Another example is the AOP project. Without an extension hijacking the executor, this kind of extension is not possible in userland in any meaningful (1st class) kind of way. I could probably come up with a few more examples, but I think those suffice. More to the point though- having the ability to expose portable libraries to PHP though extensions underscores the "glue" aspect of PHP's usefulness, it would be beneficial (IMO) to expand this usefulness to developers. -ralph