Hi,

maybe the introduce of a complete new syntax for method references would solve 
the issues? Maybe coming back to e.g. "#" ("@" is still used for supressing 
errors,...)?

As mentions before all kinds can be simplified or? See:

MyClass#myMethod

#function

This should resolve in an object as mentioned before, in this object you have 
further informations, e.g.

$ref = MyClass#myMethod;
$ref->isStatic();
...

I think an seperate solution for method/Funktion references is more realistic 
than changing core things...

Greetings
Michael 

> Am 14.10.2017 um 03:02 schrieb Andrea Faulds <a...@ajf.me>:
> 
> Hi Mathias,
> 
> Mathias Grimm wrote:
>> I would like to suggest a method constant that could be used the same way
>> we use the ::class one
>> 
>> I don't have a strong personal preference but it could be something like:
>> 
>> MyController::myActionMethod::method, no sure about the internals but it
>> would be consistent with the one for the class.
>> 
>> Cheers,
> 
> I've long wanted to make constant lookups fall back to a closure of the 
> correspondingly-named function, where one exists. so `strlen` would resolve 
> to a closure of strlen().
> 
> Thing is that classes are weird. We sort of have three different things with 
> sometimes-similar syntax: constants, methods and properties. foo::bar is a 
> constant, foo::bar() is a function, $foo->bar() is a function, but $foo->bar 
> is not a constant. So, if I want $foo->bar to resolve to a method, then 
> $foo::$bar should too, even though that makes no sense. The PHP static 
> property syntax is the bane of my existence.
> 
> -- 
> Andrea Faulds
> https://ajf.me/
> 
> -- 
> 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

Reply via email to