On Tue, Aug 20, 2024, at 08:50, Rowan Tommins [IMSoP] wrote:
> 
> 
> On 20 August 2024 00:21:22 BST, Rob Landers <rob@bottled.codes> wrote:
> >
> >I assume you are worried about something like this passing test?
> >
> >--TEST--
> >show called only once
> >--FILE--
> ><?php
> >
> >namespace test;
> >
> >spl_autoload_register(function($name) {
> >    echo "name=$name\n";
> >}, true, false, SPL_AUTOLOAD_FUNCTION);
> >
> >echo strlen('foo');
> >echo strlen('bar');
> >echo strlen('baz');
> >?>
> >--EXPECT--
> >name=test\strlen
> >333
> >
> >In my RFC, I mention it is called exactly once.
> 
> 
> I haven't looked at the PR, only the RFC, and I did not see this very 
> important detail explained anywhere. The only thing I can see is this rather 
> ambiguous sentence:
> 
> >  The function autoloader will not be called again. 
> 
> That could mean not called again for the current call (compared with 
> proposals that call it a second time with the unequalled name); it could mean 
> not called again for the current line of code (based on the current caching 
> behaviour); or never called again for that combination of namespace and name; 
> or possibly, never called again for that combination of namespace, name, and 
> callback function.
> 
> That's not a small detail of the implementation, it's a really fundamental 
> difference from previous proposals. 
> 
> So I would like to repeat my first response to your RFC: that it should sound 
> more time explaining your approach to the multiple lookup problem.
> 
> Regards,
> Rowan Tommins
> [IMSoP]
> 

Thanks Rowan,

That's a fair critique.

I expect some of the wording will be more clear once I write out the 
documentation -- even if it isn't used directly, I tend to write out 
documentation to force myself to reconcile the code with the plan, find logic 
bugs, perform larger scale tests, and create tests to verify assertions in the 
documentation. From there, I'll update the plan or code to get everything to 
match and spend some time on clarity. It's the hardest part, IMHO, as it 
requires diligently ensuring everything is correct. In other words, writing the 
documentation makes it feel like a "real thing" and it triggers what small 
amount of perfectionism I have.

— Rob

Reply via email to