Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:60710 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 3870 invoked from network); 1 Jun 2012 13:35:15 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 1 Jun 2012 13:35:15 -0000 Authentication-Results: pb1.pair.com header.from=tularis@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=tularis@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.215.170 as permitted sender) X-PHP-List-Original-Sender: tularis@gmail.com X-Host-Fingerprint: 209.85.215.170 mail-ey0-f170.google.com Received: from [209.85.215.170] ([209.85.215.170:62277] helo=mail-ey0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A5/1C-45898-215C8CF4 for ; Fri, 01 Jun 2012 09:35:14 -0400 Received: by eaal12 with SMTP id l12so541254eaa.29 for ; Fri, 01 Jun 2012 06:35:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=8XR0tGKgiVfdF1k73SpNUb7IRvUA3saCgoXbJiByko4=; b=EeeY9I8lgiVCrn3C/YzDGN7U4Te/8skT84dsBRC33w2eJViCo+tuTy+WHc9tV4wraa 8LT+Ppdkqv249lx/nIbY5JK5WpBm9sqrWIcqYmvdKo2IXdIyNkZQc94cyCCr4IyQV4aq zXBNzwXadoVYin+rryR09l3mdlZwR4okIsFdBh59/uRsONY5+uPwvC2SilI96oqZ8Gu+ SHDiI+4Y9egn5aU80UtPjXn05Wq7DNqxdz3hVgZVqSldKS0lavylP/kHm4auTqqchAAp oNlNb7+XpjpXDG13tRiOa31FazHlw74RmTrCROCz/NyUJv+t8rbpvWmwpDxkNbIjpTTt V9YQ== Received: by 10.14.188.139 with SMTP id a11mr1413169een.139.1338557711445; Fri, 01 Jun 2012 06:35:11 -0700 (PDT) Received: from [127.0.0.1] (dhcp-089-099-185-071.chello.nl. [89.99.185.71]) by mx.google.com with ESMTPS id s47sm7116018eef.4.2012.06.01.06.35.09 (version=SSLv3 cipher=OTHER); Fri, 01 Jun 2012 06:35:10 -0700 (PDT) Sender: Maciek Sokolewicz Message-ID: <4FC8C511.9070307@php.net> Date: Fri, 01 Jun 2012 15:35:13 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120428 Thunderbird/12.0.1 MIME-Version: 1.0 To: Gustavo Lopes CC: internals@lists.php.net References: <4FC80163.3030500@gmail.com> <5a9e29cec281298b330aed14b41dddb9@nebm.ist.utl.pt> <272fe309cbfd77b8c2331c9268282d95@nebm.ist.utl.pt> In-Reply-To: <272fe309cbfd77b8c2331c9268282d95@nebm.ist.utl.pt> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] BreakIterator From: maciek.sokolewicz@gmail.com (Maciek Sokolewicz) On 01-06-2012 13:34, Gustavo Lopes wrote: > On Fri, 1 Jun 2012 12:58:37 +0200, Pierre Joye wrote: >> On Fri, Jun 1, 2012 at 10:02 AM, Benjamin Eberlei >> wrote: >>> How about IntlBreakIterator? I agree with David that the naming is very >>> weird, it doesn't hint at something from Intl but another crazy spl >>> iterator :-) > > Asides from date related classes -- which could be confused with stuff > from ext/date or even ext/calendar --, no other classes have Intl in > their name. Does SpoofChecker hint at something from intl? > ResourceBundle? ICU is a rather large library, and while > internationalization is a common theme, the APIs have diverse > functionality and therefore diverse names. Plus, SPL does not have a > monopoly on the *Iterator names. > >> I agree too. BreakIterator is a very common name and I suspect >> possible naming conflicts may happen. >> > > So would you have RuleBasedBreakIterator renamed > IntlRuleBasedBreakIterator too?... I find it very hard to believe that > "BreakIterator" is "a very common name", but I'm open to evidence that > points otherwise. This argument could maybe be made for > 'Transliterator', which was added in 5.4. > In my personal opinion, all Intl classes should be prefixed with Intl. It's not so much that BreakIterator is a very common name, but rather a very ambiguous name that may point to many different things. Just by the fact that multiple people have already posted here that at first they thought BreakIterator had something to do with the break statement gives you a rather solid hint that the function of this class is not immediately clear. Prefixing it with Intl immediately makes it clear that it belongs to the Intl superfamily, and limits the potential misunderstandings a lot. I actually still don't understand why not all Intl classes are prefixed? Isn't that the usual procedure? eg. for MySQLi, and pretty much all other extensions? - Tul