develooper Front page | perl.perl5.porters | Postings from March 2023

Re: strictness and "use 5.whatever"

Thread Previous | Thread Next
Paul "LeoNerd" Evans
March 8, 2023 14:34
Re: strictness and "use 5.whatever"
Message ID:
On Wed, 8 Mar 2023 13:10:58 +0000
Zefram via perl5-porters <> wrote:

> You can have "use v5.40" mean exactly that anyway.  There is no need
> to change the meaning of "use v5.16" to achieve that.  Sure, by
> changing it you can make the meaning of "use v5.16" easier to
> explain, except no you can't, because that easier explanation only
> applies on Perl 5.40+, so the real explanation of "use v5.16" would
> then start with "it does different things depending on which Perl
> version you're running" and would incorporate the explanation of the
> current meaning.  But presumably you don't really need "use v5.16" to
> be easier to explain, because you're not advising people to start new
> programs with that.
> I suggest that you start with the new semantics now.  "use v5.37.10",
> and the equivalent for any higher accepted version, can set the
> "explicitly-set" stricture bits, making it truly equivalent to a bunch
> of pragmata that include "use strict".

Yes it could well be that the current implementation isn't optimal in
terms of back-compat. If you want to have a go at shuffling the logic
further into a threeway of:

  use VERSION < 5.12             -- do nothing
              >= 5.12 and < 5.36 -- do the intermediate "implicit"
              >= 5.36            -- do equivalent to "use strict"

I'd be happy to review a PR. It could even be slipped into 5.37.10
under the general banner of "back-compat bugfixes", and thus be fine
for a 5.38 release.

Paul "LeoNerd" Evans      |  |

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About