>> What are the good reasons for not changing the names?
> 
> 1. We want the extension to be in 5.2 to 6.x
> 2. We want PHP source code compatibility between 5.x and 6.x code

I don't understand why the choice between IntlCollator and Collator
affects compatibility between 5.x and 6.x. Can you explain this further?

> 3. We want PHP 6 users use class Collator when they need collator, not
> some weird long name, same with Locale etc.

I don't think IntlCollator is either long, or weird. Actually I feel
prefixing the extension name aids code clarity (as it tells me which
extension the class belongs to, and I can search on "Intl" to find all
places I'm using anything from the extension).

> 4. intl extension, unlike many others, do not have one functional
> module, but multiple ones, related only by underlying library.

I think the users will see it as a single extension:
  a) All the classes are based on ICU classes of the same name;
  b) I type "pecl install intl"; (I cannot just install one part)
  c) All classes are for i18n, which most people will see as a single task.


The arguments for prefixing all classes with "Intl" are:
 * Consistency with IntlDateFormatter

 * Following PHP naming guidelines

 * Avoid clashes with existing classes (someone having written a class
called Collator is more likely than someone having written one called
IntlCollator)

(I'd also add "code clarity", but that is more of a subjective, personal
thing.)


Darren

-- 
Darren Cook, Software Researcher/Developer
http://dcook.org/mlsn/ (English-Japanese-German-Chinese-Arabic
                        open source dictionary/semantic network)
http://dcook.org/work/ (About me and my work)
http://dcook.org/work/charts/  (My flash charting demos)

-- 
PHP Unicode & I18N Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to