Re: Iteration III: Packages (was Re: [PHP-DEV] [Initial Feedback] PHP User Modules - An Adaptation of ES6 from JavaScript)
| From: | Rob Landers | Date: | Mon, 01 Jul 2024 21:07:23 +0000 |
| Subject: | Re: Iteration III: Packages (was Re: [PHP-DEV] [Initial Feedback] PHP User Modules - An Adaptation of ES6 from JavaScript) | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 12 13 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-124165@lists.php.net to get a copy of this message | ||
On Mon, Jul 1, 2024, at 18:22, Mike Schinkel wrote:
> > On Jul 1, 2024, at 7:57 AM, Arvids Godjuks <arvids.godjuks@gmail.com> wrote:
> >
> > TL;DR: As a userland developer, in my opinion, this is just a downgrade from what we have
> > now. Enhance namespaces to have the ability to have internal/private classes, interfaces, enums and
> > constants. That's about it.
>
> Please note my comments that follow do not mean I am in support of this package proposal as
> presented.
>
> > Autoloading is one of the best killer features of PHP - love it or hate it - it's
> > your personal preference.
>
> Two really solid reasons to hate autoloading as implemented in PHP:
>
> 1. Autoloading runs userland code. This means it has the potential conflict between different
> packages with different autoloaders, it means there can be buggy autoloaders, and it means that when
> using XDEBUG every time a new symbol is found when the developer is single-step debugging the
> developer will be dropped into the autoloader and then best case they then immediately trace out.
> All of these aspects a major PITA and time waster and make debugging more exhausting than it needs
> to be.
FWIW, (in Intellij at least), you can set it to skip those files.
— Rob