Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:78627 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 98096 invoked from network); 4 Nov 2014 11:20:21 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 4 Nov 2014 11:20:21 -0000 Authentication-Results: pb1.pair.com smtp.mail=pierre.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pierre.php@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.216.53 as permitted sender) X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 209.85.216.53 mail-qa0-f53.google.com Received: from [209.85.216.53] ([209.85.216.53:52743] helo=mail-qa0-f53.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id B1/C0-27956-476B8545 for ; Tue, 04 Nov 2014 06:20:20 -0500 Received: by mail-qa0-f53.google.com with SMTP id n8so9611656qaq.40 for ; Tue, 04 Nov 2014 03:20:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=GHGjnRIbYgNE6gLT72Sid37ZqABERBVuzsHPUKJK9Hk=; b=HiP3W2QT00CgRdwixEAA4hh06+L5In/Fs1BqQEl+gw0mO1vEuB/+OstNbAdiru9MY2 1d1fJu9ZW83OdJTQGEpC8sTYW/wmxM0wXdh2bA3suIKmJdhu2d/1wjqnnCop2BS4vsxI CezHT05c+ryAlDxIyWdui5CLmh3dxKfoaYdTDZxt9lp+HPTE0sfWJCBR3TJTkWbzNYF7 zZ2my85LfLQFhWggMCVlA7J00w/9QUg30WABqf7x3E5dB7k4LGv+DNzsX16CzCmEN4L2 vO+pyXd2xEjuoZCXfWNF1w0z2KICS8TU1cCKrNpOiMApKXdZXcM7TRVfHWQjV71XOhNX dS1A== MIME-Version: 1.0 X-Received: by 10.224.60.196 with SMTP id q4mr75389169qah.63.1415100016381; Tue, 04 Nov 2014 03:20:16 -0800 (PST) Received: by 10.140.89.149 with HTTP; Tue, 4 Nov 2014 03:20:16 -0800 (PST) Received: by 10.140.89.149 with HTTP; Tue, 4 Nov 2014 03:20:16 -0800 (PST) In-Reply-To: References: <5457AF2F.90808@php.net> <5457BDB7.8070701@garfieldtech.com> <54589A8D.3020607@sugarcrm.com> Date: Tue, 4 Nov 2014 18:20:16 +0700 Message-ID: To: Benjamin Eberlei Cc: Larry Garfield , Levi Morrison , PHP internals , Stas Malyshev Content-Type: multipart/alternative; boundary=001a11c3e4aecc54b6050706a575 Subject: Re: [PHP-DEV] Annotation PHP 7 From: pierre.php@gmail.com (Pierre Joye) --001a11c3e4aecc54b6050706a575 Content-Type: text/plain; charset=UTF-8 On Nov 4, 2014 8:54 PM, "Benjamin Eberlei" wrote: > > On Tue, Nov 4, 2014 at 11:28 AM, Pierre Joye wrote: >> >> On Tue, Nov 4, 2014 at 4:21 PM, Stas Malyshev wrote: >> > Hi! >> > >> >> As I do consider personal tastes important, there are times where we should >> >> listen to our users. >> > >> > It would be nice to take "paving the walkways" approach, but last time >> > we tried, IIRC we've got into something very over-engineered. Maybe if >> > we try again with more restricted scope (i.e. not trying to put a DSL >> > for describing arbitrarily complex data structures into it :) it would >> > be more successful this time. >> >> All projects mentioned in this thread use: >> >> http://doctrine-common.readthedocs.org/en/latest/reference/annotations.html >> >> That makes a pretty good base spec. > > > Being the author I can say, the doctrine annotations project is way too over-engineered/special-purpose to land in core. > > I agree with Stas that a much simpler approach is probably realistic. > > beginning pure speculation here, i see a short array like syntax like: > > [foo="bar", bar="baz", baz=["key": "value"]] > function annotated_fn() {} > > Maybe even exactly short array syntax: > > ["foo"="bar", "bar"="baz", "baz"=["key": "value"]] > function annotated_fn() {} > > Then $reflectionFunction->getAnnotations() returns an array. Various PHP/Userland libraries and frameworks can then stick whatever symantic on top that they want. Yes, that was what discussed last time too and makes perfectly sense. I only not sure about the syntax. I do not like that one f.e. not really in phase with what exists (doctrine or other languages). Cheers, Pierre --001a11c3e4aecc54b6050706a575--