Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:93208 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 99079 invoked from network); 11 May 2016 07:11:44 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 11 May 2016 07:11:44 -0000 Authentication-Results: pb1.pair.com smtp.mail=dmitry@zend.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=dmitry@zend.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 157.56.110.143 as permitted sender) X-PHP-List-Original-Sender: dmitry@zend.com X-Host-Fingerprint: 157.56.110.143 mail-bn1on0143.outbound.protection.outlook.com Received: from [157.56.110.143] ([157.56.110.143:40576] helo=na01-bn1-obe.outbound.protection.outlook.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 68/01-28272-E2BD2375 for ; Wed, 11 May 2016 03:11:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=RWSoftware.onmicrosoft.com; s=selector1-zend-com; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=AZyh70YxdSVS19uGD1pkctzISS8r0owH8U69FLuzMBg=; b=JwJNfPV3G4jyd7gVpQgTcKlgQ2482v1T4lMRNuPBejKdklwOs5jnrj8qlxD48dynwYMQ6CGEom48CibjPkHbFgs7B4TDu6O55stEJSmPfH3Y8inJR/01T8eEpBH4JEqQqk/kObqU25CoyHp/jEqoYvTF6y4SEhyfmSA7e7kaB3o= Authentication-Results: lists.php.net; dkim=none (message not signed) header.d=none;lists.php.net; dmarc=none action=none header.from=zend.com; Received: from tpl2.home (92.62.57.172) by BLUPR0201MB1778.namprd02.prod.outlook.com (10.162.239.12) with Microsoft SMTP Server (TLS) id 15.1.492.11; Wed, 11 May 2016 07:11:37 +0000 To: Joe Watkins References: <8d5d1c42-832d-4406-6bb5-dbf3fc02c364@telia.com> <95ccaf31-11de-8efb-13ba-038d36a6c466@zend.com> CC: =?UTF-8?Q?Bj=c3=b6rn_Larsson?= , PHP internals Message-ID: <001d497d-0117-b337-422b-7192cbed3070@zend.com> Date: Wed, 11 May 2016 10:11:24 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/alternative; boundary="------------51397BD661B9289436BB5229" X-Originating-IP: [92.62.57.172] X-ClientProxiedBy: DB5PR02CA0041.eurprd02.prod.outlook.com (10.161.237.51) To BLUPR0201MB1778.namprd02.prod.outlook.com (10.162.239.12) X-MS-Office365-Filtering-Correlation-Id: 50317049-e8ec-4301-ac6d-08d3796b7ec4 X-Microsoft-Exchange-Diagnostics: 1;BLUPR0201MB1778;2:kYyWJ8eEtYj9nb3Crx0Cf2I4sfJPtthq2nJOkd5W0yA9SvEzo5qumL/1yppo/ZH3F9RM/VST3ZkqShGFF9MuO/Yg9UULBpUu4UBh2pGV0euA4xzWWu5E6Fg+zlPtPQ9IenAxHR7hXLXLYAKLQ62nvCbN9Po35I2FjXml4jtvM+Ig5g3oFWc+wqOUhaG9eYYz;3:aE/jegeO/+vsYMU5pBVeb3w8NMpd3ANOMqZkaiWjYhWUP2O18N60lOqHhfCS3ZsdiJaakV12vzZQCrOXD6tTrGu33y4AvQqzkBRs7bxhHiZ9lFRfLZ+AzNR9DocT8YfX X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR0201MB1778; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BLUPR0201MB1778;25:AL6bEuhjzy75Kl0JZiM0qLQIS/K0QFRpAjhP4+M?= =?us-ascii?Q?xJ4r/oNxARlMfQsIS7durB4XMvcOL10B+jIu7IP2f64S+Ke+P+g18VA5cvmo?= =?us-ascii?Q?b7Zd7nevFKDNyAS9Gm1jfw5Br9TtNLwN+byfQDc9EZVpeaxIyYA960S0umBf?= =?us-ascii?Q?zqHQztx+7ihqD0rUpzPpsWupHiimluAKzOrc8JWdBfao7+bF69MTJg3HqaSz?= =?us-ascii?Q?OAgq75vaZBd4WT4bOU4mVdtmOsQiq5JF7+DWKGNxfAYr93UvEH7H7dha823z?= =?us-ascii?Q?zc5Sq80nofAFVDd14xRygCa2dccDFmU8EwqGaIrXYbY3b5ORbyvL4XbOOFqE?= =?us-ascii?Q?FoDCBKAyQkO1R49pqVVF4nPp2rxOAJDc2sTiy1wsGtODa34oaaI+Tw5KwBu7?= =?us-ascii?Q?/5kgXpC114n91XACuA7pZPSk4q8iMS5HlVUQiZJopTrfq9w1eWezPY88QVul?= =?us-ascii?Q?AOdClHijfB7EH3WyVVtf+G5ixvGvH3CCchMNMRnKsjMJaa3kXc884i1JnikB?= =?us-ascii?Q?u9hvOHm4J3oMgIDAxwq1ezh7/XiMc1pOGqgX0hf1D4pFgS/wfOheONY3hYqG?= =?us-ascii?Q?Itr/ZyNN1Zqqbr9NHJEOymvixREBMyhyEyEwXXwdbd5aV9qLjCv/sPR5Zhm7?= =?us-ascii?Q?+VbpWHGQbPYCb8VxpTjWHT/kgzjHllkCueHqaSQCrU2hJECuSSxHjghCGlyl?= =?us-ascii?Q?ZzcV5Au9LcUx0q+joYsOpQPjgTWuKZscrLpLYccqckwDJEAKopaJvJk5uMgT?= =?us-ascii?Q?LSInJLtJEMAi71j9BsYMLBi7vfYd8driHMFI9aiJQTY+mxyw74dWwTxyFH0P?= =?us-ascii?Q?4twP08J5XxU/Z7DWXcLixMFcGUJdFChpZsA8RteNhQV1+LfAp5PA1OfLvHSA?= =?us-ascii?Q?X13rV1Ut9VZ3LlJCt2XibFF0IT45eKLQHuIMrpzW9lYYsvspU2KysHgotO1a?= =?us-ascii?Q?IgN/A8i7WmJl5ojJ0IBRGp6puq/U0FWSFrqD/yJ70t2vthUGS9i2FdjvZYv+?= =?us-ascii?Q?sBxJrjD5SE6cmwroNo8809aSD0K3tDjWsFKri/qB6dBXduRRV0doiLZw2eMG?= =?us-ascii?Q?UMQ90B/CYdRvPDEQePxoihFitODIJ?= X-Microsoft-Exchange-Diagnostics: 1;BLUPR0201MB1778;20:g5AyZQX8ux0qgL5IvcVC0J0DhNvah/RM3Qikr85uqjpB/8enep9KuutHml3yz+3pIH6dWyLN4BHIG3dK11jD+WLGslRWTJaRnKeBYsSEXAtdODMhuGZffpBEHswoVolVyttdlz0wOWNi2WO9TQzjU4G0BTzELv6WR3RLnxeli05LmEAnGKlUS1lpUY/mfR7lqn4LfiAIsF7ruao/F5FQzxjagc94zI7HKV2ym72qiNQ3DQjRpFZsiaFRutEFIQTinbHqot4j5eQZaOJtDfwROvS/6ocUYRtLx35yprwR9pXD9ehTH8IboHnGwRZiqODUguyA5afMeftW1pYiNu27jX7Ghmsr6069WyxRoUsg+8UUBv9m3XQyaHRYudn+IX9fZ8inJbMqMEm2Lpo09j+9+P2LTAjylKj4T2T68fq3Ie/hdNIanF4we1wMOxYvOxRf+K3JPWo6QmzfEoH6M9PAFHX4SWgvj7HrtYF1DVHspiL4c51C7Se38/glhYEGtbfe;4:SGT6uaSyDOZz3y+zgrttLrynWwaW3cMG9dD/RnQXqWrYrDJwpo42Fs5xUxbbDCoTQwFwyseY35UG2gGpbQncyMbKOuP7tU5kUq3o9sszTzVHef7u+FnZ1hvVI6mSRVQthF7MqYh21vBr0u+obKtuIhpnQMbgbuliecnoUXVVbK2Ya7nQskGuOFE3QEoWhHTxb8WaOfGTmzDbenogiDjB8eu+/6//Pzos5Et21cj62SHVJtomwKue50ndG8Q/wbJKTCBQ7Kq0HzIJPfNhnPivrgmhUxo/nVsy/n2oDR0ZtpC0YhxBj/Fv9DVMzyEI5EHpsug593hKA1MoFkRVAR/IwQUTC7ucFnLC2c1OSJ2bhyGtd/NuBhtJx37bEwav4GzA X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046);SRVR:BLUPR0201MB1778;BCL:0;PCL:0;RULEID:;SRVR:BLUPR0201MB1778; X-Forefront-PRVS: 0939529DE2 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(51914003)(377454003)(377424004)(24454002)(76176999)(54356999)(110136002)(50986999)(19617315012)(33646002)(4001350100001)(65956001)(189998001)(66066001)(65806001)(19580405001)(19580395003)(15188155005)(86362001)(16799955002)(81166006)(36756003)(16236675004)(561944003)(4326007)(2906002)(84326002)(83506001)(6116002)(3846002)(42186005)(31686004)(586003)(5008740100001)(15975445007)(77096005)(93886004)(31696002)(92566002)(2950100001)(5004730100002)(512874002)(65826006);DIR:OUT;SFP:1102;SCL:1;SRVR:BLUPR0201MB1778;H:tpl2.home;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BLUPR0201MB1778;23:OnjFwXl3d+y+QGKHwklqZLhm0PveASYhjh+SANx?= =?us-ascii?Q?XHFIUSonifFS4lzP6DYCgJ3t4ivdtF9i8Ha7f7rIonwuw9KfC7LIOhVro8mJ?= =?us-ascii?Q?r2Z/hfXhbwBPGtbSJGKk8L0HWrSvlaCdNEP1UENrbJj6xD2vxNX6tSNKtrnw?= =?us-ascii?Q?4DPkwwC9CN+QODKVuaGKnGSbSyVNQAxEzgFvTvRORgqYYUkG0Sxd4rqmflJ3?= =?us-ascii?Q?QkTpzRzJQpaxRE+AcERIigRhQ65CiTPR6k4M1tGz4mA+WnlhWzj1WTky1SWg?= =?us-ascii?Q?BmtHFQNRN3Cx0UETkAUbLB4SQlEr+28RJ+kgl2FBinJa997xfY/Nw8y0TBy1?= =?us-ascii?Q?8/XpdxpWzySL4StUw+IpWMzimR+ec2ETSf+/9UZyAW51/58leVxwRw0cD5l+?= =?us-ascii?Q?PjvbVAcd+UqnKQDorrVoqQaYiujLcN4A05cAA6GEMH+9Q3Gp9P4857ReI6XZ?= =?us-ascii?Q?8B4rZ+y6ca9Gm0YwF3v9wfeVk1gV8c/6RsAakfK0iqqoveg9zIaz++xGADMj?= =?us-ascii?Q?mur9FvO1PzojusOG30v3VC4qrMYBI26/Jnf15jY/uzU8rwGFVst7ac5CSQcJ?= =?us-ascii?Q?f/yK9PJiHDNtj1TXVYAbXX+yF6uuNL4Ad3cOfusYeVJ8kDTj78CACrXYi8kW?= =?us-ascii?Q?DEOeKyrKj0vXIXf5bTrUdtUfIDBXpVXE29+lEPlhVtKeJk32x6mRm+0o4CJ8?= =?us-ascii?Q?pCTM6TBzjqbaNvK8vUP/r44qCBAbZ7g63Koei6M7q0BOdeF21YSPNpbB+gdV?= =?us-ascii?Q?zOh3IOQLmuwWFno+IlGLxMF05wxk4jkkNX1VW+ginUNftwAl649mPW/RB6YU?= =?us-ascii?Q?pkZ5QZ9xyjWY1DQpsyMgUlZj3tX6OPBu3dkqn/Kjqov8dKoV/rPkmO7PQue2?= =?us-ascii?Q?qt8TjK4C9pFiAsOsdWk8AGT/R78Mv73szmw0e8GanKQshwlF3yqPs2VIp2qW?= =?us-ascii?Q?wJKhjkP629KfBmT+IOmEXH0oKwtsNaNFfXiL5xM2BaW/bk9yiiRiEgUtLxl+?= =?us-ascii?Q?Wrlzl/+V4ihpRs7sBYJSyeWhV+S/u40Qsiyojh/CXsdUfq1dPrQe19K+zI0t?= =?us-ascii?Q?hiJNRuzFKdRuhBBxP3iVnpVwEOcA+p6btt3MS6Fq8rsODFzC/ZKrUhj7nFF4?= =?us-ascii?Q?W/mqzs2KMqzgvXE7jwHLiqGN9qBF2CiIMpR6Qqlzj1YXodpzPywSeyqGVF+J?= =?us-ascii?Q?ppxvUBUXkcBgGob8=3D?= X-Microsoft-Exchange-Diagnostics: 1;BLUPR0201MB1778;5:3fSToDh1klKSL5lqJjtbf3J4re9nHjCIarUr18qGVM0Ra3iubyJ6zhxOy/ZBO8YkibZ9rjTAWvhAYP20d75F1bMori6lf57ohyb/uYbFtEVs2iqL8oyWods6cYW5Uqus3/dRFgtpuU6WOtbU2SdmGA==;24:eIolT873/STPENwsooZ/ZTZdoLUQXWWhIMztfMWYGEndeFB+/jUz95MqLIlXvfa1ouf1q26y94CCthD4uoqeJ8pJlBju4GuRe6PKHgLxWWo=;7:q2wvp6W3ONt3mthCuV2gpUAo8ML6RZQh98K8we4JQ5tZWOMZxhu1Uavrt/FIr3fsHWuokUPatI2yu3wzIdFPM89T/vBCWdLO4415NKEE21bTkxwviqYfCPlijnE0/WYBQJa/Ciu259gV66Viry3HrTtvks/N6y2idbIEGOu6yGiOb8IFg+UZCEMutyKPmGKR SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: zend.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2016 07:11:37.6682 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0201MB1778 Subject: Re: [PHP-DEV] [RFC] [VOTE] PHP Attributes From: dmitry@zend.com (Dmitry Stogov) --------------51397BD661B9289436BB5229 Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit On 05/11/2016 09:57 AM, Joe Watkins wrote: > Dmitry, > > > but it's possible to get the same power translating string values of > attributes into AST in the hooks. > > Aware. > > Enough of the complexity is already the responsibility of the consumer > of the attributes. > > It's already possible to get strings (and so AST) from doc comments, > we don't need anything new if that's all you want to do. > > Essentially, moving something from doc comments to <> makes zero > sense to me. Except the fact, that doc-comment content don't have to conform to any rules, and you have to parse it and extract the necessary part of meta information every time you need it. It's not a big problem to do this using Doctrine library, but how are you going to do this in a compiler hook? > > Cheers > Joe > > On Wed, May 11, 2016 at 7:45 AM, Dmitry Stogov > wrote: > > > > On 05/11/2016 09:02 AM, Joe Watkins wrote: >> Morning Dmitry, >> >> > On the other hand simple string may be parsed into AST with >> just one additional call to ast\compile_string(). >> >> You're not really suggesting that I write my tools in user land, >> are you ? It's me, Joe :)ce > > At first days of RFC discussion Sara pointed on over-design > regarding AST. > I saw sense in here comments and updated RFC. > >> >> I *only* want attributes as they were originally proposed, and I >> can't vote to reflect that. >> >> As discussed in private, what I want is attributes, as originally >> proposed, and a hookable compiler; Anything else is not good enough. > > Personally, I'm for AST as well, but it's possible to get the same > power translating string values of attributes into AST in the hooks. > > Thanks. Dmitry. > > >> >> Cheers >> Joe >> >> >> >> On Wed, May 11, 2016 at 6:26 AM, Dmitry Stogov > > wrote: >> >> Hi Joe, >> >> >> The sense in native support for AST is questionable. >> >> >> On one hand this allows syntax verification. >> >> >> On the other hand simple string may be parsed into AST with >> just one additional call to ast\compile_string(). >> >> >> Thanks. Dmitry. >> >> >> ------------------------------------------------------------------------ >> *From:* Joe Watkins > > >> *Sent:* Wednesday, May 11, 2016 7:46:09 AM >> *To:* Björn Larsson >> *Cc:* Dmitry Stogov; PHP internals >> *Subject:* Re: [PHP-DEV] [RFC] [VOTE] PHP Attributes >> Morning Dmitry, >> >> I'm not really happy with the voting options here. >> >> I would not vote in favour of a patch that does not >> include support for AST, that's a completely different feature. >> >> As it is, I have to vote yes in favour of AST, but it may >> be counted as a vote in favour of attributes without AST ... >> >> This doesn't seem right ... I don't want attributes >> without AST, and there is no voting option to reflect that. >> >> Cheers >> Joe >> >> On Tue, May 10, 2016 at 11:09 PM, Björn Larsson >> > > wrote: >> >> Den 2016-05-11 kl. 00:00, skrev Dmitry Stogov: >> >> >> >> On 05/11/2016 12:29 AM, Björn Larsson wrote: >> >> Den 2016-05-10 kl. 20:29, skrev Dmitry Stogov: >> >> Hi internals, >> >> >> I've started voting on "PHP Attributes" RFC. >> >> >> https://wiki.php.net/rfc/attributes >> >> >> In my opinion, "PHP Attributes" might be a >> smart tool for PHP extension, but it's not >> going to be the end of the world, if we >> decided to live with doc-comments only. >> >> >> Thanks. Dmitry. >> >> Thanks for the good work. Regarding naming, I googled >> "PHP attributes" vs "PHP annotations" and looking >> at the >> result, my view is that that Annotation is a >> better naming >> then Attributes. Any hope in changing it? >> >> >> The more I listen to arguments of adepts of existing >> PHP annotation systems, the more I think, that "PHP >> attributes" is the right name for this proposal. >> This feature is not just for PHP annotation systems. >> >> >> Thats a fair point, so Annotation it's not. Still, when I >> hear PHP >> attributes I associate it with class / function >> attributes. Maybe >> just a question getting used to the naming. Hm, wonder if PHP >> directives could have been an option? >> >> Regards //Björn >> >> >> >> -- >> PHP Internals - PHP Runtime Development Mailing List >> To unsubscribe, visit: >> http://www.php.net/unsub.php >> >> >> > > --------------51397BD661B9289436BB5229--