Front page | perl.perl5.porters |
Postings from July 2020
Re: Perl 7 - updates
From: Todd Rinaldo
July 4, 2020 00:27
Re: Perl 7 - updates
Message ID: F7E203E7-F365-4DFE-AC08-F0CEE513F967@cpanel.net
> On Jul 3, 2020, at 7:02 PM, Kent Fredric <email@example.com> wrote:
> On Sat, 4 Jul 2020 at 11:26, Sawyer X <firstname.lastname@example.org> wrote:
>> * Change "use VERSION" to mean "protocol," so "use v8" on Perl 7 will
>> work. (It's effectively "give me version 8" or "I'm writing for protocol
>> version 8".)
> This is the most confusing part of this proposal so far. However, I
> have an idea of how this *might* work, and so I'll just let my
> imagination run for a bit.
> 1. Perl 7 is not shipped immediately.
Perl 7 ships soon with essentially the same code as 5.32.0
> 2. Perl 5.xx continues to plod along, but in some 5.xx, `use v7`
> starts to "work".
Only maintenance releases of 5.32/5.30 happen for perl 5.
> 3. Then, `v7` implies a changing in-progress standard, which people
> can opt-into, ahead of time.
People can in advance of 7 start injecting use v5; at the top of their code.
> 4. Perl7 ships, and the features it implied and developed for v7
> become frozen, and v8 starts to "work".
Right. But in 7.0.0 , use v8 and use v7 are identical since 0.0 releases are only to lock in stone the features as of the new major version.
> 5. Perl 7 continues with boring releases, and all the new stuff planned
> for the v8 feature set become available with `v8`.
> 6. v8 ships, v8's feature set freezes, v9 support begins.
> Which means that you can opt-into latest and greatest ahead-of-time,
> at the price that your code *may* be broken by changes in the planned
> featureset, and any "use vX" statement only becomes reliable *after*
> vX ships.
What I really kinda want for my own company's code base is 'use vl' (latest) or 'use vi' (infinity?) which would always choose all the new features of the coming major version. If that existed, our code would just set that and as we always do, adjust our code as we switch to a new version of Perl. Then we don't have to update 5000 files in our code base when we switch to Perl 8 or 9. But this is a wish list item. If we don't get this, we'll just do a big commit and move on ¯\_(ツ)_/¯.