Welcome to this week’s Perl 5 Porters summary. Thank goodness this was a lighter week for posting volume as I’m burning tuits at an alarming rate!
This week’s topics include:
- Perl 5.17.2 is now available
- JROBINSON grant report #1
- di/ds/ig exempt from warnings in void context
- \h not equiv to [\h]
Perl 5.17.2 is now available
Tony Cook announced the release of 5.17.2 on July 20, 2012. It’s available from your favorite CPAN mirror or perlbrew.
JROBINSON grant report #1
The Perl Foundation sponsored Jess Robinson to work on cross-compiling a Perl toolchain for the Android development environment. She posted her first grant progress report this week, reporting progress in setting up a wiki site to show existing solutions.
di/ds/ig exempt from warnings in void context
Paul Johnson explains a very old perl “feature” in response to an RT ticket about how constants that begin with di/ds/ig are exempt from “Useless use of a constant in void context” warnings. Back in the old days when dinosaurs roamed data centers, Perl would allow you to inline nroff directives as documentation. The source code in op.c says
op.c:1473 /* perl4's way of mixing documentation and code (before the invention of POD) was based on a trick to mix nroff and perl code. The trick was built upon these three nroff macros being used in void context. The pink camel has the details in the script wrapman near page 319. */
So there’s your (extremely obscure) Perl bar trivia question of the week.
\h not equiv to [\h]
Eric Brine described a bug in Perl 5.16.0 regex engine where \h and [\h] do not return the same result as expected.
$ perl -le'print "\xA0" =~ /\h/ ?1:0' 1 $ perl -le'print "\xA0" =~ /[\h]/ ?1:0' 0
It looks as though this bugfix may be included in Perl 5.16.1