> How does the first part relate to the second part in any way? The > confusion level? If that's your point, then we're doing our best to > decrease confusion rather than foster it. PHP 5 was a big step in the way > with its new object model and the much reduced need for references. As a > matter of fact - reducing confusion and clarifying the language was pretty > much the main reason we have PHP 5 today (a lot of things were added on > the > way, of course).
It does indeed relate. You now have the problem that you have to explain to people why they cannot do "return new FooBar();" in their methods. It'll be a major PITA for newbies, people won't understand why they have to work around an engine problem they shouldn't really care about. After all, they have come to PHP because it's simple, because they don't have to care about memory allocation and usage, garbage collection, whatever. And now they have to use a temporary variable because otherwise, somewhere in PHP's deepest innards, memory will be leaked. So tell me, how does that _not_ relate? > I definitely intend to oppose to features which will be confusing in the > future as well, so feel free to go ballistic right about now :) And with > the (hopeless) hope not to start a pointless thread here, there's nothing > essential or vital about namespaces (it doesn't mean that they're bad or > good, but they're definitely not essential). Don't get me wrong, I appreciate the improvements that shipped with PHP5. In fact, hell, there's nothing I don't like about PHP5 (apart from the lack of namespaces, that is ;)). And the references stuff has made things a lot easier for everyone, not only for beginners. But besides that, PHP5 introduced many new features (interfaces, visibility, iterators to name only a few) everyone loves, and nobody considers these to be confusing to newbies, apparently. And they are right, because nobody _forces_ newcomers to use these. Just like namespaces would be optional, not mandatory. I really have to say that I'm not comfortable with the way the needs of "the people" are determined. I'm sure a majority of developers regards namespaces support as way more important than, say, an input filter extension. PHP should not only be about protecting dumb beginners from making even dumber mistakes, but also about giving those that are serious about using PHP on the enterprise level the tools to do so, properly. The two open source projects I'm involved with, Propel and Mojavi/Agavi, are desperately begging for namespaces support. You just can't prefix everything. And both projects have experienced naming collisions in the past. - David -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php