FAQ

On Fri, May 13, 2016 at 2:11 PM, Rasmus Schultz wrote:

Dear Internals,

I'm announcing a simplified RFC for annotations:

https://wiki.php.net/rfc/simple-annotations

It's an alternative to the proposed Attributes RFC and the (2010)
Annotations RFC.

I'm attempting with this to describe a feature that is closer to the
language than what is proposed by the Attributes RFC, by permitting
the use of any valid PHP expression as an annotation value.

Where the Attributes RFC proposes new syntax for what is essentially
arrays, this proposal instead permits you to use actual arrays, e.g.
without inventing any new syntax. It also allows you to use values of
any other type, including objects. This makes the proposed feature
more immediately useful, with a minimal learning curve.

Compared with the old Annotations RFC (and Doctrine Annotations, etc.)
this proposal does not attempt to define or enforce any rules about
what annotations are, permitted usage, inheritance rules, etc. -
instead it adds a very simple language feature upon which the
community may choose to build (and evolve) facilities that implement
additional rules and logic.

My hope is that, if we can agree on something very small and simple,
we can defer the more opinionated discussions about rules and logic to
the community.

In my opinion, language features should be simple, and consistent with
the language - I believe the way to do that, is to avoid discussions
about how such as facility should be used, and instead focus on how it
should work. There is a lot of opinion built into the old Annotations
RFC, and into Doctrine - features that attempt to dictate how the
feature should be used. I don't believe the language should dictate
what is or isn't correct or appropriate use.

I think I like this, however a couple of simple questions:

1) Any chance for (optionally) _naming_ annotations? It would be nice to be
able to do: ->getAnnotation('table') and not have to handle unnecessary
annotations

2) I like the idea of Hacks memoize for example, how do you see those being
implemented? Or don't you?

3) When are annotations executed? On ->getAnnotations()? Every time?

Thanks,

Search Discussions

Discussion Posts

Previous

Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 2 of 25 | next ›
Discussion Overview
groupphp-internals @
categoriesphp
postedMay 13, '16 at 12:11p
activeMay 17, '16 at 6:39p
posts25
users10
websitephp.net

People

Translate

site design / logo © 2018 Grokbase