Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:84563 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 74690 invoked from network); 11 Mar 2015 17:55:41 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 11 Mar 2015 17:55:41 -0000 Authentication-Results: pb1.pair.com header.from=marcio.web2@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=marcio.web2@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.217.182 as permitted sender) X-PHP-List-Original-Sender: marcio.web2@gmail.com X-Host-Fingerprint: 209.85.217.182 mail-lb0-f182.google.com Received: from [209.85.217.182] ([209.85.217.182:38666] helo=mail-lb0-f182.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 14/0C-07702-C9180055 for ; Wed, 11 Mar 2015 12:55:40 -0500 Received: by lbiz12 with SMTP id z12so10658555lbi.5 for ; Wed, 11 Mar 2015 10:55:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=CPh+cRHXnoXZlMGqUrOGD0jtY+nffG5ItDCiGLYjOBA=; b=kwbrQTsokjBydbmgdavm1AgJWskpQGklogbYLrwziAl+b26sWSswco23Xv+T6Onlu7 nSyPDPhrdB/G4ihUGW+4QaeHJzhpVdQ1KqsOPXAdPfQ6L8qzcKTEojnau2HNp0KNKjTT VTJ01DC2tTocXJ8e1rwTfyV/ePM6HKEusy7nX/yAnLz03Iuz9I74xyBEAhsQ2yPMJnBu tjWEVfhK24MODcTYhTPrPQVRUtQQEUelDP99oPkMGtCiJ3qhD9rFPNtvzWy46oqRdeXW NBeZQi0vnjKLlI9Qz15yWHOAIzV4mrMO2jUBlH176nW7gdrg+mghxKLrhUCYiw1eZKo/ r5/g== X-Received: by 10.152.178.197 with SMTP id da5mr36591800lac.56.1426096537096; Wed, 11 Mar 2015 10:55:37 -0700 (PDT) MIME-Version: 1.0 Received: by 10.152.118.169 with HTTP; Wed, 11 Mar 2015 10:55:16 -0700 (PDT) Reply-To: marcio3w@gmail.com In-Reply-To: References: Date: Wed, 11 Mar 2015 14:55:16 -0300 Message-ID: To: Nikita Popov Cc: PHP internals Content-Type: multipart/alternative; boundary=001a11340c688258bd051106f9c1 Subject: Re: [PHP-DEV][RFC][VOTING] Context Sensitive Lexer From: marcio.web2@gmail.com (Marcio Almada) --001a11340c688258bd051106f9c1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi, 2015-03-11 11:49 GMT-03:00 Nikita Popov : > On Mon, Mar 9, 2015 at 6:47 AM, Marcio Almada > wrote: > >> Hi, >> >> Just passing by to announce I already have a working version of the new >> patch: https://github.com/php/php-src/pull/1158 >> >> The patch is 100% compatible with the proposed one with the advantages: >> >> - Has no regression or forward compatibility risks and is highly >> predictable >> - Has an very small footprint compared to the previous attempt >> involving >> a pure lexical approach >> - Is highly configurable, to make a word semi-reserved you only have = to >> edit a single inclusive list in a parser rule. >> - Requires a single compile time check >> >> More than ever, I'd like to advice voters to vote for the feature as the >> new implementation is already on it's way. There still some work to be >> done, please refer to the task list on the pull request to see what stil= l >> needs to be done. >> >> It would be nice to have the new patch reviewed too. >> > > The new implementation does indeed look much nicer :) The only open > question left is how you want to deal with ext/tokenizer support. Can you > clarify your plan regarding that? > I'm working right now to add full support to ext tokenizer back. I'm not very experienced with the PHP implementation so, needless to say, I found numerous ways to break the tokenizer extension \o/ But a solution is getting closer and might get pushed soon. If some harder problem I don't have enough information to solve arise I'll try to ask for some advice or collaboration, though it doesn't seem necessary for now as we still have some time and it's been a great learning experience :) > > Also, is this vote about the new implementation now? > > I'm updating the RFC (rush time here gimme a few minutes) to list both implementations side by side on the patch section, and explaining that the second patch supersedes the first one. > Nikita > > M=C3=A1rcio --001a11340c688258bd051106f9c1--