Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:61202 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 74453 invoked from network); 13 Jul 2012 16:02:49 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Jul 2012 16:02:49 -0000 Authentication-Results: pb1.pair.com header.from=lists@rotorised.com; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=lists@rotorised.com; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain rotorised.com from 117.55.227.22 cause and error) X-PHP-List-Original-Sender: lists@rotorised.com X-Host-Fingerprint: 117.55.227.22 mta22-data1.ironport2.cbr1.mail-filtering.com.au Received: from [117.55.227.22] ([117.55.227.22:62591] helo=mta22-data1.ironport2.cbr1.mail-filtering.com.au) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 82/38-17670-5A640005 for ; Fri, 13 Jul 2012 12:02:47 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AiENAD5GAFCva78L/2dsb2JhbABFuRwEAwGCGAEBBAF4AQULCw4KCRYPCQMCAQIBRQYNAQcBAYgDBbtzkTIDlkyEMROKMIJx X-IronPort-AV: E=Sophos;i="4.77,579,1336312800"; d="scan'208";a="40773348" Received: from ju001lcs02.dfw.the-server.net.au (HELO ju001lcs02.dfw.the-server.com.au) ([175.107.191.11]) by smtp-data2.ironport2.cbr1.mail-filtering.com.au with ESMTP; 14 Jul 2012 02:02:29 +1000 Received: from [27.33.45.210] (port=24635 helo=[192.168.2.104]) by ju001lcs02.dfw.the-server.com.au with esmtpa (Exim 4.77) (envelope-from ) id 1SpiK3-004CD3-JV; Sat, 14 Jul 2012 02:02:27 +1000 Message-ID: <500046A0.4030006@rotorised.com> Date: Sat, 14 Jul 2012 02:02:40 +1000 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20120614 Thunderbird/13.0.1 MIME-Version: 1.0 To: Anthony Ferrara CC: internals@lists.php.net References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] 6.0 And Moving Forward From: lists@rotorised.com (Ryan McCue) Anthony Ferrara wrote: > 1. Change the error handling system from the current E_* system to typed > exceptions for everything but advisory errors (E_STRICT, E_NOTICE, > E_DEPRECATED). Why? Because the current error system encourages ignoring or > not checking what the error was, and it makes defensive programming quite > difficult. This is arguable and preference for sure, but it's a major > change that could have large benefits. +1. It's strange to me that PHP doesn't use exceptions in the areas where they apply. For example, catchable fatal errors could almost always be represented as an exception for better handling (IMHO). > 3. Make all zval types pseudo-objects. Basically enabling something akin to > auto-boxing allowing a significant amount of the standard library to be > eventually deprecated in favor of acting on methods (not initially, but > opens the door). +1. I'd love to be able to extend primitive types. If that's possible, methods on primitives could be implemented entirely in userland. ---- I'd also like to see more Unicode (by which I mean UTF-8). I'd like to see the string methods split into byte-level and character-level where needed, with character-level functions based on mbstring. -- Ryan McCue