Porters,
We had fifteen experiments when 5.35.0 began, and we have closed out one of them, the win32 pesudo-layer. I would like to close out more and move other forward. Here is a review of a number of them.
*isa* — I believe isa is complete. It works, it can be used, no design changes seem to be in the wings. What prevents us from calling this stable (and including it in the v5.36.0 feature bundle)? #18754 <https://github.com/Perl/perl5/issues/18754>
*:const* — This is a somewhat esoteric feature, but I have used it and it does what it says on the tin. I believe it is largely unused, but the behavior is what I expected, and it is occasionally useful. Unless it is going to produce an undue maintenance burden, *I believe we should land this experiment.* What prevents us from doing so? #14428 <https://github.com/Perl/perl5/issues/14428>
*variable-length lookbehind* — This appears to work and the user-facing design does not seem to need changing, even if bugs are later found. *I believe we should land this experiment.* What prevents us from doing so? #18756 <https://github.com/Perl/perl5/issues/18756>
*private character hooks *— It's not clear to me that this is actually intended for use outside of core, in which case I don't know that it needs to be considered much. My question is: By what criteria would we ever decide to change the status of this code? #18758 <https://github.com/Perl/perl5/issues/18758>
*Unicode property wildcards* — I believe this is not receiving enough use to really warrant a clear result from use testing, so the question is the nearly same as above: By what criteria would we ever decide to change the status of this design? While we might change the guts later, is the design right? (Design is the key question about experiments, with implementation mattering most when it affects the practicality fo the design.) #18759 <https://github.com/Perl/perl5/issues/18759>
*regex strictures* — I believe this should be moved to strict.pm, with the shift to "use strict" meaning "use strict VER". Beyond that, though, we may want to discuss whether this needs splitting into more strictures, especially since it also provides warnings. I feel this may be stalled due to lack of engagement from users or porters. #18755 <https://github.com/Perl/perl5/issues/18755>
*refaliases — *I'm very keen to see this one land. The biggest problem is the bug "lexical subs don't close over refaliases <https://github.com/Perl/perl5/issues/18980>", which to my mind makes them incomplete. #14150 <https://github.com/Perl/perl5/issues/14150>
*declared refs* — Declared refs is mostly sugar to make refaliases more attractive. Without merging refaliases, my take is roughly "what's the point"? #15458 <https://github.com/Perl/perl5/issues/15458>
*signatures *— This needs its own post. #13681 <https://github.com/Perl/perl5/issues/13681>
*smartmatch* — We have resisted removing this failure for years, as we want to replace it with something else. My take: we should just rip this out and later, *maybe*, put something else in. #13173 <https://github.com/Perl/perl5/issues/13173>
*installhtml* — I don't think this makes sense as an experiment. We should drop the experimental classification. #12726 <https://github.com/Perl/perl5/issues/12726>
*pluggable keyword API* — Calling this experimental is also weird. We have had a number of PSC (and other) conversations about changing how pluggable keywords work so that their implementation could be less exposed, and certain hooks could be made experimental so they'd warn when being hooked into. *I would love to see an email about this from Nicholas or Paul.* #13199 <https://github.com/Perl/perl5/issues/13199>
--
rjbs
We had fifteen experiments when 5.35.0 began, and we have closed out one of them, the win32 pesudo-layer. I would like to close out more and move other forward. Here is a review of a number of them.
*isa* — I believe isa is complete. It works, it can be used, no design changes seem to be in the wings. What prevents us from calling this stable (and including it in the v5.36.0 feature bundle)? #18754 <https://github.com/Perl/perl5/issues/18754>
*:const* — This is a somewhat esoteric feature, but I have used it and it does what it says on the tin. I believe it is largely unused, but the behavior is what I expected, and it is occasionally useful. Unless it is going to produce an undue maintenance burden, *I believe we should land this experiment.* What prevents us from doing so? #14428 <https://github.com/Perl/perl5/issues/14428>
*variable-length lookbehind* — This appears to work and the user-facing design does not seem to need changing, even if bugs are later found. *I believe we should land this experiment.* What prevents us from doing so? #18756 <https://github.com/Perl/perl5/issues/18756>
*private character hooks *— It's not clear to me that this is actually intended for use outside of core, in which case I don't know that it needs to be considered much. My question is: By what criteria would we ever decide to change the status of this code? #18758 <https://github.com/Perl/perl5/issues/18758>
*Unicode property wildcards* — I believe this is not receiving enough use to really warrant a clear result from use testing, so the question is the nearly same as above: By what criteria would we ever decide to change the status of this design? While we might change the guts later, is the design right? (Design is the key question about experiments, with implementation mattering most when it affects the practicality fo the design.) #18759 <https://github.com/Perl/perl5/issues/18759>
*regex strictures* — I believe this should be moved to strict.pm, with the shift to "use strict" meaning "use strict VER". Beyond that, though, we may want to discuss whether this needs splitting into more strictures, especially since it also provides warnings. I feel this may be stalled due to lack of engagement from users or porters. #18755 <https://github.com/Perl/perl5/issues/18755>
*refaliases — *I'm very keen to see this one land. The biggest problem is the bug "lexical subs don't close over refaliases <https://github.com/Perl/perl5/issues/18980>", which to my mind makes them incomplete. #14150 <https://github.com/Perl/perl5/issues/14150>
*declared refs* — Declared refs is mostly sugar to make refaliases more attractive. Without merging refaliases, my take is roughly "what's the point"? #15458 <https://github.com/Perl/perl5/issues/15458>
*signatures *— This needs its own post. #13681 <https://github.com/Perl/perl5/issues/13681>
*smartmatch* — We have resisted removing this failure for years, as we want to replace it with something else. My take: we should just rip this out and later, *maybe*, put something else in. #13173 <https://github.com/Perl/perl5/issues/13173>
*installhtml* — I don't think this makes sense as an experiment. We should drop the experimental classification. #12726 <https://github.com/Perl/perl5/issues/12726>
*pluggable keyword API* — Calling this experimental is also weird. We have had a number of PSC (and other) conversations about changing how pluggable keywords work so that their implementation could be less exposed, and certain hooks could be made experimental so they'd warn when being hooked into. *I would love to see an email about this from Nicholas or Paul.* #13199 <https://github.com/Perl/perl5/issues/13199>
--
rjbs