Re: solving the namespace conflict issues between function/staticmethod class constant/ns constant

From: Date: Mon, 22 Sep 2008 15:45:33 +0000
Subject: Re: solving the namespace conflict issues between function/staticmethod class constant/ns constant
References: 1 2 3 4 5 6 7 8 9  Groups: php.internals 
Request: Send a blank email to internals+get-40601@lists.php.net to get a copy of this message
On 22.09.2008, at 16:37, Dmitry Stogov wrote:
Returning to the original debate, if you really believe this conflict is not an issue, then why was the first user note published last December a note about this conflict? http://us3.php.net/manual/en/language.namespaces.php#80035
I could add nothing. The problem exists, but proposed solution make language even worse. Having A::B->foo() and ->foo() or ::foo() and A::B->C::foo() is much more inconsistent from my point of view. It would be better to change static class separator from :: to ->, but it's a BC break
Again, not speaking as an RM, I personally feel we really do have to solve this ambiguity problem. I do not agree that this only affects "namespace abusers". That being said we have to stay realistic. What Greg proposes is realistic imho. Its essentially reusing an existing OO syntax. The same is what we have today with the double colon. While I agree that it would not be my natural choice, it seems it solves our real problem of the frequently mentioned ambiguity problem. So from that perspetive its a step forward from the current syntax. I know we are getting dangerously close (or are we already back in it?) to the namespace separator discussion. I remember back then a lot of people were saying lets get the implementation done first and then worry about the syntax. I guess we are more or less at this point now. regards, Lukas Kahwe Smith mls@pooteeweet.org

« previous php.internals (#40601) next »