Re: [Discussion] Last chance for case-sensitive engine
| From: | Yasuo Ohgaki | Date: | Wed, 25 Feb 2015 02:07:01 +0000 |
| Subject: | Re: [Discussion] Last chance for case-sensitive engine | ||
| References: | 1 2 3 4 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-83734@lists.php.net to get a copy of this message | ||
Hi Francois,
On Wed, Feb 25, 2015 at 8:45 AM, François Laupretre <francois@php.net>
wrote:
>
> I stopped for several reasons :
>
> 1. The reactions were mostly negative, with a majority of 'breaks much,
> brings nothing' opinions,
>
> 2. Crawling through the code, I discovered that code to handle case
> insensitivity was spread all around PHP. Example: I thought that function
> and method names could be made case-sensitive by modifying a limited
number
> of lines of code. Actually, it seems it is handled in a more or less
> redundant way in a lot of locations. So, I quickly realized that
> implementation would be extremely complex.
>
> 3. A lot of PHP code is, knowingly or not, using PHP case insensitivity.
>
> 4. A patch to make PHP case sensitive would be very complex, and
providing a
> two-mode mechanism still much more. It would require in many cases to
> provide another case-sensitive test after each case-insensitive one and
> raise an error if both don't match. We must do that because
case-insensitive
> comparisons are done using a case-sensitive comparison of two strings
> previously converted to lowercase. It would also require to store every
> class/function/method names twice, as they are currently stored in
lowercase
> form. As lowercase names are transmitted as strings around the code, it is
> very complex to keep the link with the original value. So, to summarize, I
> now consider that providing a compatibility 'notice-only' mode is
> practically impossible.
>
> So, while it seemed attractive at first, I stopped working on it.
Sounds reasonable.
Zend does comparison/conversion various places indeed. "Propose
& announce it now, then implement it PHP8" may work. We may get a
little simpler Engine for PHP8.
Regards,
--
Yasuo Ohgaki
yohgaki@ohgaki.net