Steph, I think prefixing internal classes is the most userfriendly approach actually as it leaves these top-level names to userspace code and prevents future conflicts. We are talking about classes here, so it isn't like they get typed very often either. You instantiate the class and then name the resulting object yourself with whatever short descriptive variable name you want. It's quite different from the procedural API where you certainly don't want php_if() or php_while() since those are needed all the time. But $foo = new PHPFoo(); $foo->func1(); $foo->func2(); looks perfectly acceptable to me.
Rasmus, I'm sorry but I can't agree with you. When we get namespacing it'll make perfect sense to have PHP::Foo(). Until then, it makes no sense whatsoever to me to mess about with plain names for root classes. We aren't breaking 'tousands of apps out there' unless someone doesn't bother to read the upgrade guide and happens to have not prefixed their own classes. And if in that situation, all the user needs to do is search and replace, and all _we_ need to do is offer support for that replacement that will work in PHP 4 as well as in PHP 5.2 and beyond.
- Steph
-Rasmus
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php