Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:74509 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 70828 invoked from network); 27 May 2014 02:06:38 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 27 May 2014 02:06:38 -0000 Authentication-Results: pb1.pair.com smtp.mail=smalyshev@sugarcrm.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=smalyshev@sugarcrm.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain sugarcrm.com designates 108.166.43.123 as permitted sender) X-PHP-List-Original-Sender: smalyshev@sugarcrm.com X-Host-Fingerprint: 108.166.43.123 smtp123.ord1c.emailsrvr.com Linux 2.6 Received: from [108.166.43.123] ([108.166.43.123:34628] helo=smtp123.ord1c.emailsrvr.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id D1/C0-00171-D23F3835 for ; Mon, 26 May 2014 22:06:38 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp16.relay.ord1c.emailsrvr.com (SMTP Server) with ESMTP id DBA2438073A; Mon, 26 May 2014 22:06:34 -0400 (EDT) X-Virus-Scanned: OK Received: by smtp16.relay.ord1c.emailsrvr.com (Authenticated sender: smalyshev-AT-sugarcrm.com) with ESMTPSA id D2DF938073D; Mon, 26 May 2014 22:06:33 -0400 (EDT) Message-ID: <5383F329.3050106@sugarcrm.com> Date: Mon, 26 May 2014 19:06:33 -0700 Organization: SugarCRM User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 MIME-Version: 1.0 To: Pierre Joye , Bob Weinand CC: Andrea Faulds , Dmitry Stogov , Zeev Suraski , Xinchen Hui , PHP Internals , Andi Gutmans , Nikita Popov References: <-6285448086228171932@unknownmsgid> <67d97efff27b61e45ef74d4f4339b4b3@mail.gmail.com> <962B3020-200F-45D2-8FEC-AD7A0BFDA50E@ajf.me> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] RE: [RFC] Fast Parameter Parsing API From: smalyshev@sugarcrm.com (Stas Malyshev) Hi! > zpp current usage is much more readable to me and less error prone > while writing (clang plugin helping to check the syntax, see Johannes > tools). Not really - I have to go to the docs each time to remember what \ or / are and what is the difference between H and h or z and Z. And putting a wrong arg type is extremely easy. I've just learned about clang thing this month, so I'm pretty sure I can count number of people who use it on one hand, and it doesn't seem to be mentioned anywhere in the docs. > May I point you to my questions in this thread about extending the > reflection struct, add the necessary info (types) and maybe do the > naming args while being at it? This would be great (again, laying ground for named args support) but I'm not sure how to do it. We have a bit of a contradiction here since the speedup requires unrolled code (that's what the current ideas do) and reflection requires static data struct. I'm not sure how to make both work. Maybe with some kind of function pointers in the data struct for parsing? But I'm afraid then it would lose the speedup, since it won't be inlined unrolled code anymore. -- Stanislav Malyshev, Software Architect SugarCRM: http://www.sugarcrm.com/ (408)454-6900 ext. 227