Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:60246 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 49586 invoked from network); 20 Apr 2012 21:10:00 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 20 Apr 2012 21:10:00 -0000 Authentication-Results: pb1.pair.com smtp.mail=g.rossolini@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=g.rossolini@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.214.170 as permitted sender) X-PHP-List-Original-Sender: g.rossolini@gmail.com X-Host-Fingerprint: 209.85.214.170 mail-ob0-f170.google.com Received: from [209.85.214.170] ([209.85.214.170:61917] helo=mail-ob0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 02/1E-63732-7A0D19F4 for ; Fri, 20 Apr 2012 17:09:59 -0400 Received: by obbup16 with SMTP id up16so6854452obb.29 for ; Fri, 20 Apr 2012 14:09:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=ODYa4xGx9K0e0Dnj0+W+24jlbykiLbpfgvOPYiBxb84=; b=X5brIvktNn58VXsFZMOhOm5HTlaeSlJY8LiKgU7+oHPw9roC554QB3k/9lGuPDcfsU x0Q0sUTN12iAR0vY00IS6DHkIUpWyTgntkE3Kx7x/jAl1elM9afOdW/0JlKVEUP/CIql aiAJJ7prCAfAEvNWuTgt8G+URfxjNeKuXX/ZgCYVchYCjTdadCtWcPgoLuW8GVbVsl+Q d7ZHIf0j+7rTnJEFmG6snBFwWSWwO1knZi+hTlW+9c7aqaalCZiYjq3jYdavReKAROG8 pqczP1MWgolyO8kol9hh9rzzCxQ9wzCah0mKDshXEwoEhnNLhTTQ/z4YYkrR8q1/O+Pt ygZQ== MIME-Version: 1.0 Received: by 10.60.4.134 with SMTP id k6mr10963104oek.19.1334956196569; Fri, 20 Apr 2012 14:09:56 -0700 (PDT) Received: by 10.182.23.130 with HTTP; Fri, 20 Apr 2012 14:09:56 -0700 (PDT) In-Reply-To: References: Date: Fri, 20 Apr 2012 23:09:56 +0200 Message-ID: To: PHP internals Content-Type: multipart/alternative; boundary=e89a8ff1cb6ce320aa04be22b506 Subject: Re: [PHP-DEV] Complete case-sensitivity in PHP From: g.rossolini@gmail.com (Guillaume Rossolini) --e89a8ff1cb6ce320aa04be22b506 Content-Type: text/plain; charset=UTF-8 Hi there, Out of curiosity, how would one migrate a codebase for full case sensitivity in PHP? They would need to rewrite their calls of core functions, plus PECL functions. Those are easy enough to spot, but there are also custom extensions. True, one could maybe parse the .h files to get the functions, classes, interfaces etc. as long as there are .h files or similar, and rewrite everything based on that. However, there are also userland functions, classes and other identifiers that could be defined anywhere, from files on disk to an encrypted database somewhere. Plus, as Matthew pointed out, identifiers are not always fully written in the code: they can be concatenated or aliased, and these calls would need to be rewritten too (and good luck finding them all). I am sure I have not listed here all the challenges in migrating for this new functionality, but I hope it will be enough that we do _not_ get case sensitivity for functions/classes/interfaces/etc. in PHP. The cost truly outweights the benefits. I can understand why bug #18556 should be fixed, but I don't understand why the solution should be to make PHP a fully case sensitive language. @C.Koy: until now, tools have been able to cope with PHP's case insensitivity just fine. I have no idea how difficult it is to do, but obviously they can do it. And anyway, I use tools _because_ they do some of the work for me, so that's just a tribute to their usefullness, isn't it? Regarding other languages, it has been stated before on this list that PHP is its own language. Regards, -- Guillaume Rossolini --e89a8ff1cb6ce320aa04be22b506--