Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:61204 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 77321 invoked from network); 13 Jul 2012 16:13:41 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Jul 2012 16:13:41 -0000 Authentication-Results: pb1.pair.com smtp.mail=julienpauli@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=julienpauli@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.160.170 as permitted sender) X-PHP-List-Original-Sender: julienpauli@gmail.com X-Host-Fingerprint: 209.85.160.170 mail-gh0-f170.google.com Received: from [209.85.160.170] ([209.85.160.170:55920] helo=mail-gh0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A4/D8-17670-53940005 for ; Fri, 13 Jul 2012 12:13:41 -0400 Received: by ghbg2 with SMTP id g2so4413670ghb.29 for ; Fri, 13 Jul 2012 09:13:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; bh=N50r+F0fYXGHewpwDKLCtY0n+eGryg+07TR4SYuINdo=; b=tc7JIWO7YwcsbRGYbS5c5SOrDEXcTUe1TKPdL+q9ebBPW6VvfEzRGWcZmzbUYD+jcJ 9mUTVfsSU2/W9xpVm9cLLKYmVMWGgOh1GYifEwXZ7FqnOdPizVFv78GTPEDqHy30J2p9 qx+Fz5RKwYvR0DPXLpgCrESmwp7h1DNLUkXOz9RGo+2cIwVC8IDca5ODhjUHsKTR2tqx lOpIgpPa3M18me4Uhpv3bwklLrRDPicSY5j0GvO1imiMPS4ShxzKc059uFsCktFmGD7w H32u09d0/TPHySTm3EjZrqeflU3r7PFHYrn8uGnLPL/DnF06i3qQkxghmdmj4dDTnLpt Lb6Q== Received: by 10.50.10.197 with SMTP id k5mr1520928igb.39.1342196018670; Fri, 13 Jul 2012 09:13:38 -0700 (PDT) MIME-Version: 1.0 Sender: julienpauli@gmail.com Received: by 10.64.23.74 with HTTP; Fri, 13 Jul 2012 09:12:58 -0700 (PDT) In-Reply-To: References: Date: Fri, 13 Jul 2012 18:12:58 +0200 X-Google-Sender-Auth: MRAWl0Aq0IoaoBduWPuKkih9gTQ Message-ID: To: Anthony Ferrara Cc: internals@lists.php.net Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [PHP-DEV] 6.0 And Moving Forward From: jpauli@php.net (jpauli) On Fri, Jul 13, 2012 at 5:33 PM, Anthony Ferrara wrote: > Hey all, > > I know that 6.0 was originally supposed to be the unicode conversion of the > engine. However it appears that all progress on that has stopped for quite > some time. > > So, I was curious if we could start a conversation around what 6.0 would > look like if we didn't go the unicode route. What would be the major > changes that we'd base it on. Will it be named 6.0 ? That's the first question. We should, IMO, open a huge wiki page to aggregate our ideas. No voting stuff at all for the moment, just throw ideas like you did in this mail. The RFC could then be split later in severals little ones if needed. Debate like "+1"s should appear on the mailing list though. "+1"s are just first advices, needing deeper investigation; ML is then a good place for that. > > Here are a few of the ideas that have been floating around in my head. > > 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. > > 2. Make namespaces first-class meta-objects. That way, you could have > namespace private and protected classes, functions, variables, etc. This > would allow for better scoping of modules... > > 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). > > 4. Rewrite the entire parser completely. I keep hearing about how bad PHP's > parser is, and how it's growing out of control. Perhaps this is a good time > to rewrite it (perhaps changing semantics slightly) to be better adapted > towards future changes... We have an RFC and a patch playing with lemon parser. Actually, just a conversion, reentrant. Refer to Pierrick or Felipe about it :-) > > I'm not saying all of them are solid. I'm not saying any of them are solid. > But hopefully this can spark a discussion around it... I would have added merging the SPL code to ZendEngine, somehow. Thanks ! Julien