X-Git-Url: http://git.shiar.net/sheet.git/blobdiff_plain/ee1437d08c232641221d449e508d348db43ca837..9afb22425e28f6f3e9a53f06e19ad4279562d810:/perl.inc.pl
diff --git a/perl.inc.pl b/perl.inc.pl
index 8768465..3be3eec 100644
--- a/perl.inc.pl
+++ b/perl.inc.pl
@@ -4,18 +4,18 @@ use utf8;
v5.6 => {
new => [
['use warnings
', 'pragma to enable warnings in lexical scope'],
- ['use utf8
', 'experimental unicode semantics (completed in v5.8)'],
+ ['use utf8
', 'experimental unicode semantics (completed in v5.8)', v5.8],
['use charnames
', 'string escape \N{}
to insert named character'],
['our
', 'declare global variables'],
['v1.2.3
', q`represent strings as vector of ordinals, useful in version numbers (printf '%vd'
to display)`],
['0b0
', q`binary numbers in literals, printf '%b'
, and oct
`],
- ['sub :lvalue
', 'subroutine attribute to return a modifiable value'],
+ ['sub :lvalue
', 'subroutine attribute to return a modifiable value', v5.20],
# ['sub :locked :method
', 'syntax to declare subroutine attributes'], # can be inferred from :lvalue support
['open my $fh, $mode, $expr
', 'file handles in scoped scalars, third argument for unambiguous file name'],
- [q`pack 'q'
`, '64-bit integer support (also large files >2GiB)'],
+ [q`pack 'q'
`, '64-bit integer support (also large files >2GiB)', v5.8.1],
['sort $coderef ()
', 'comparison function can be a subroutine reference; prototype ($$)
to pass elements as normal @_
'],
['CHECK {}
', 'special block called at end of compilation'],
- ['/[[:â¦:]]/
', 'POSIX character class syntax such as [[:alpha:]]/
'],
+ ['/[[:â¦:]]/
', 'POSIX character class syntax such as /[[:alpha:]]/
'],
# quite a lot more, but leave it at this
],
release => '2000-03-23',
@@ -50,12 +50,12 @@ use utf8;
v5.10 => {
new => [
['//
', 'defined-or operator'],
- ['~~
', 'smart-match operator to compare different data types (updated in v5.10.1)'],
- ['given
', 'switch statement to smart-match with when
/default
'],
+ ['~~
', 'smart-match operator to compare different data types (updated in v5.10.1)', 'experimental::smartmatch'],
+ ['given
', 'switch statement to smart-match with when
/default
', 'experimental::smartmatch'],
['/(?<name>)/
', 'named capture buffers into %+
'],
['s/keep\K//
', 'floating positive lookbehind, efficient alternative for s/(keep)/$1/
'],
['/\v/, /\h/
', 'vertical and horizontal whitespace escapes'],
- ['my $_
', 'lexically scoped version of the default variable'],
+ ['my $_
', 'lexically scoped version of the default variable', 'experimental::lexical_topic'],
],
release => '2007-12-18',
distro => {
@@ -73,7 +73,7 @@ use utf8;
['use 5.012
', 'Implicit strict
if use VERSION >= v5.12'],
['⦠when
', 'when
is now allowed to be used as a statement modifier'],
[q(use overload 'qr'
), 'customisable conversion to regular expressions'],
- ['/\N/
', 'inverse \n to match any character except newline regardless of /s
'],
+ ['/\N/
', 'inverse \n to match any character except newline regardless of /s
', v5.18],
],
release => '2010-04-12',
unicode => '5.2',
@@ -86,9 +86,9 @@ use utf8;
new => [
['s///r
', 'non-destructive substitution'],
['/(?^)/
', 'construct to reset to default modifiers'],
- ['/(?{ m() })/
', 'regular expressions can be nested in /(?{})/
and /(??{})/
'],
- ["use re '/flags'
", 'customize default modifiers'],
- ['each $ref
e.a.', 'array and hash container functions accept references'],
+ ['/(?{ m() })/
', 'regular expressions can be nested in /(?{})/
and /(??{})/
', v5.20],
+ ["use re '/flags'
", 'customise default modifiers'],
+ ['each $ref
e.a.', 'array and hash container functions accept references', ''],
['FH->method
', 'filehandle method calls load IO::File on demand (eg. STDOUT->flush
)'],
],
release => '2011-05-14',
@@ -115,8 +115,8 @@ use utf8;
v5.18 => {
new => [
['${^LAST_FH}
', 'last read filehandle (used by $.
)'],
- ['/(?[ a + b ])/
', 'regex set operations (character substraction -
, unions &
)'],
- ['my sub foo
', 'lexical subroutines (also state, our)'],
+ ['/(?[ a + b ])/
', 'regex set operations (character substraction -
, unions &
)', 'experimental::regex_sets'],
+ ['my sub
', 'lexical subroutines (also state
, our
)', 'experimental::lexical_subs'],
['next $expression
', 'loop controls allow runtime expressions'],
[q(no warnings 'experimental::â¦'
), 'mechanism for experimental features, as of now required for smartmatch'],
],
@@ -126,9 +126,9 @@ use utf8;
v5.20 => {
new => [
- ['sub ($var)
', 'subroutine signatures'],
+ ['sub ($var)
', 'subroutine signatures', 'experimental::signatures'],
['%hash{â¦}
', 'hash slices return key+value pairs'],
- ['[]->@*
', 'postfix dereferencing (also e.g. $scalar->$*
for $$scalar
)'],
+ ['[]->@*
', 'postfix dereferencing (also e.g. $scalar->$*
for $$scalar
)', 'experimental::postderef'],
[q(use warnings 'once'; $a
), 'variables $a and $b are exempt from used once warnings'],
],
unicode => '6.3',
@@ -137,4 +137,15 @@ use utf8;
debian => 'jessie',
},
},
+
+ v5.21.8 => {
+ new => [
+ ['\$alias =
', 'aliasing via reference'],
+ ['<<>>
', 'safe readline ignoring open flags in arguments'],
+ ['/()/n
', 'flag to disable numbered capturing, turning ()
into (?:)
'],
+ ],
+ unicode => '7.0',
+ release => '2015-01-20',
+ unstable => 1,
+ },
}