On 17/11/10 06:38, Will Fitch wrote: > I like the idea, Alec. > > My only question is, syntactically, what difference would using a keyword, > in this case "attribute", as opposed to brackets "[]"? I would say that it provides better searchability -- it's easier for people new to the feature to recognise what it means, and to search for how to use it. I for one didn't understand what []-style annotations were when I first saw them, and had no idea how to find out what it meant.
D > On Tue, Nov 16, 2010 at 9:38 PM, Alec Gorge <alecgo...@gmail.com> wrote: > >> Ah, thanks. >> >> This is my proposed syntax and examples of it being used: >> https://gist.github.com/702925 >> >> Here is my answer to those questions: >> >> - PHP code >> - See the gist for syntax >> - Return object instances of the annotation because then you can call >> methods on the annotation if you need to (it think it would be useful) >> - Can you APC cache ones that exist at compile time and then not cache ones >> that are created at runtime (since they are likely to change anyways, >> request to request)? >> - Method argument order to maintain consistency with PHP syntax. Named >> arguments if PHP ever gets 'em. The grammar addition should use the grammar >> already there in the grammar file for calling methods so that it always >> works with the new way of calling methods and functions. >> - Yes for inherited metadata as long as you can filter it out (exactly like >> in the RFC). >> >> A another comment: >> >> getAnnotation($name) and getAnnotation($name, $type) both have to become >> getAnnotations and then always return an array. This makes things more >> consistent and allows for multiple metadata structures for each method. >> >> The gist I posted would be a fully working API (albeit very basic with no >> proper error/exception handling) if the url parsing code was put in, but I >> left it out for brevity. >> >> Opinions? >> >> -Alec >> >> >> >> >> On 11/16/2010 9:39 PM, guilhermebla...@gmail.com wrote: >> >>> Hi Alec, >>> >>> Here is the quick list: >>> - Where to put the metadata information? docblock or though php code? >>> - Syntax (based on first decision) >>> - Return would be an array or object instances >>> - Compile time or run time (decision is more about APC being able to >>> cache, but instances being created at runtime automatically or no APC >>> cache but instances only being created when requested (during >>> Reflection call) >>> - Named variables for instantiation or method arguments order? How >>> would we deal with the need of Reflector during constructor if second >>> sounds better? >>> - Would we support inherited metadata? >>> >>> Cheers, >>> >>> On Wed, Nov 17, 2010 at 12:33 AM, Alec Gorge<alecgo...@gmail.com> wrote: >>> >>>> In my opinion (as a person with 0 karma), I think that sounds reasonable >>>> because most people are most concerned about the actual implementation >>>> (syntax, performance, apc etc) because I don't think many argue that >>>> Metadata doesn't have value. >>>> >>>> What are the 5 different discussion topics you are thinking of, just out >>>> of >>>> curiosity? >>>> >>>> Also, I can just post my syntax idea as a gist or pastie or something >>>> instead of making an rfc... >>>> >>>> -Alec >>>> >>>> On 11/16/2010 9:29 PM, guilhermebla...@gmail.com wrote: >>>> >>>>> Hi Stas, >>>>> >>>>> Ok, so you think I should just consider everyone want some sort of >>>>> meta attribute support and start discussing the topics? >>>>> Should I separate it in different threads or put it all here? >>>>> >>>>> The subject is big and I identify at least 5 different discussions >>>>> that can diverge. >>>>> >>>>> Cheers, >>>>> >>>>> On Wed, Nov 17, 2010 at 12:26 AM, Stas Malyshev<smalys...@sugarcrm.com> >>>>> wrote: >>>>> >>>>>> Hi! >>>>>> >>>>>> I'm able to write 10 RFC's, but none will care until we reach this >>>>>>> list with a patch. >>>>>>> >>>>>> Not entirely true. Patch helps, but with feature this big and complex >>>>>> having >>>>>> consensus on design before actually implementing it may be better and >>>>>> save >>>>>> you some time. >>>>>> As for polls, I think generic "having annotations" poll is not very >>>>>> useful. >>>>>> It's like having a poll "should we have cool features in PHP?" Of >>>>>> course >>>>>> we >>>>>> should! The devil is in the details. And so far the details of this >>>>>> thing >>>>>> contain a significant number of devils we have to handle. >>>>>> -- >>>>>> Stanislav Malyshev, Software Architect >>>>>> SugarCRM: http://www.sugarcrm.com/ >>>>>> (408)454-6900 ext. 227 >>>>>> >>>>>> >>> >> -- >> PHP Internals - PHP Runtime Development Mailing List >> To unsubscribe, visit: http://www.php.net/unsub.php >> >> > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php