Re: Proposal for PHP 7 : case-sensitive symbols
| From: | Marco Pivetta | Date: | Mon, 22 Dec 2014 00:50:41 +0000 |
| Subject: | Re: Proposal for PHP 7 : case-sensitive symbols | ||
| References: | 1 2 3 4 5 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-79856@lists.php.net to get a copy of this message | ||
On 22 December 2014 at 01:43, Andrea Faulds <ajf@ajf.me> wrote:
> Hey,
>
> > On 21 Dec 2014, at 23:33, David Muir <davidkmuir@gmail.com> wrote:
> >
> > The insensitivity makes code brittle. Sometimes the same code will run
> fine, and other times it breaks depending on what lines triggered the auto
> loader. If you instantiate a Foo instance first, then instantiate a new
> foo, the code runs fine, but if you try to instantiate a new foo first, we
> get a fatal error.
>
> I’d say that’s not the fault of insensitivity, but the fault of
> poorly-written autoloaders.
I'd like to know if there's an autoloader that handles case sensitivity
without O(2^n) stat calls worst-case scenario (N being namespace/class name
parts chars).
A stricts standards warning in case of type sensitivity issues after a
class with the same was already loaded would make a lot of sense:
class Foo {}
$foo = new Foo;
$bar = ($foo instanceof foo); // stricts standards
Same goes for type-hints in methods, as those may break reflection (which
triggers autoloading).
Greets,
Marco Pivetta
http://twitter.com/Ocramius
http://ocramius.github.com/