This is amazing. It would actually allow us to implement our automated assertions ourselves, as opposed to requiring it within the language.
Could it also support references? <<sanitize(&$a)>> function foo($a) { } On 21 Apr 2016 10:13 p.m., "Dmitry Stogov" <dmi...@zend.com> wrote: > Hi, > > > I would like to present an RFC proposing support for native annotation. > > The naming, syntax and behavior are mostly influenced by HHVM Hack, but > not exactly the same. > > The most interesting difference is an ability to use arbitrary PHP > expressions as attribute values. > > These expressions are not evaluated, but stored as Abstract Syntax Trees, > and later may be accessed (node by node) in PHP extensions, preprocessors > and PHP scripts their selves. I think this ability may be useful for > "Design By Contract", other formal verification systems, Aspect Oriented > Programming, etc > > > https://wiki.php.net/rfc/attributes > > > Note that this approach is going to be native, in contrast to doc-comment > approach that uses not well defined syntax, and even not parsed by PHP > itself. > > > Additional ideas, endorsement and criticism are welcome. > > > Thanks. Dmitry. >