Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:35893 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 74391 invoked from network); 2 Mar 2008 23:26:02 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 2 Mar 2008 23:26:02 -0000 Authentication-Results: pb1.pair.com smtp.mail=rasmus@lerdorf.com; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=rasmus@lerdorf.com; sender-id=unknown Received-SPF: error (pb1.pair.com: domain lerdorf.com from 168.215.118.250 cause and error) X-PHP-List-Original-Sender: rasmus@lerdorf.com X-Host-Fingerprint: 168.215.118.250 Mail.Conquestis.com Windows 98 (no sack) Received: from [168.215.118.250] ([168.215.118.250:46649] helo=mail.ConquestIS.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 1E/76-29055-9873BC74 for ; Sun, 02 Mar 2008 18:26:02 -0500 Received: from [10.59.1.25] ([12.13.142.4]) by mail.ConquestIS.com with Microsoft SMTPSVC(6.0.3790.1830); Sun, 2 Mar 2008 18:40:08 -0500 Message-ID: <47CB3780.3090201@lerdorf.com> Date: Sun, 02 Mar 2008 18:25:52 -0500 MIME-Version: 1.0 To: Stanislav Malyshev CC: Marcus Boerger , internals@lists.php.net References: <1706278209.20080302232134@marcus-boerger.de> <47CB2E9D.6010102@zend.com> In-Reply-To: <47CB2E9D.6010102@zend.com> Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 02 Mar 2008 23:40:08.0781 (UTC) FILETIME=[C00DA7D0:01C87CBE] Subject: Re: [PHP-DEV] [RFC] Replace the flex-based scanner with an re2c [1] based lexer From: rasmus@lerdorf.com (Rasmus Lerdorf) Stanislav Malyshev wrote: > Hi! > >> be much easier, switching to re2c promises a much faster lexer. >> Actually, >> without any specific re2c optimizations we already get around a 20% >> scanner > > I think 20% faster is very cool. > However, as I understand re2c is not a standard tool found everywhere. > So what happens if you wanted to use it on some exotic system where > re2c is not readily available as manintainer-supported software? Also, > flex is available on Windows for example as part of cygwin, while I > don't see re2c there. I don't think this part is a concern since we have required re2c for quite a while now to build many critical parts of PHP. People who actually need to regenerate the parser files are the same people for whom it is trivial to figure out how to install re2c. And yes, it would of course be good to use a released version of re2c, but I think by the time 5.3 is ready to go the version of re2c we need will be out there. Since it is Marcus' baby, he can just push it out, I don't think this is a stumbling block either. Some of the new stuff in re2c was specifically added to make it easier to write a PHP parser, so I don't think backporting to an older version is really an option. -Rasmus