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

From: Date: Mon, 22 Sep 2008 17:42:53 +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 10  Groups: php.internals 
Request: Send a blank email to internals+get-40603@lists.php.net to get a copy of this message
On Mon, Sep 22, 2008 at 7:45 PM, Lukas Kahwe Smith <mls@pooteeweet.org> wrote: > > 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. The syntax proposed by Greg seems ok to me. While it is a bit "unintuitive" at first, it is easily learnable and does it's work > 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. -- Alexey Zakhlestin http://blog.milkfarmsoft.com/

« previous php.internals (#40603) next »