This week saw the arrival of spring in the northern hemisphere, and coincidentally the release of a new development version of bleadperl, which you can peruse for testing the new features, the new fixes, the new optimisations, and of course the new bugs. But of couse 5.9.1 is already outdated for the perl 5 porters, who like to live at the edge of the bleadperl. Read on for the latest news.
The latest development version of perl, numbered 5.9.1, was released. The annoucement can be found at
http://groups.google.com/groups?selm=20040316221415.05eee295.rgarciasuarez%40fre e.fr
and the perldelta document for this version can be found at
http://search.cpan.org/user/rgarcia/perl-5.9.1/pod/perl591delta.pod
can()
is not defined()
Nicholas Clark remarked that after undefining a subroutine Foo::foo(),
the expression Foo->can('foo')
is still true. Rafael answered that
Foo::foo() still exists(), even if it's not defined(). The rest of the
thread gave lots of good reasons for this behaviour.
Brent Dax proposed to add a delete &foo
syntax to completely delete
subroutines, consistently with other uses of delete(). This sounds like a
great idea.
http://groups.google.com/groups?selm=20040316222340.GY701%40plum.flirble.org
Elisabeth Mattijsen asked why the assignments to lexical variables in
my $x = undef; my @x = (); my %x = ();
were not optimised away. As noone found a good reason, Rafael added the desired optimisation.
http://groups.google.com/groups?selm=p05111b08bc7b9fc3e325%40[192.168.10.114]
Jim Cromie proposed a patch to enhance the backend compiler module B::Concise, used to dump optrees. For example it can now produce output to any filehandle. Rafael suggests that this could be useful to test the non-regressions of some optree optimisations, like the one documented in the last paragraph.
http://groups.google.com/groups?selm=4058BF4B.1000004%40divsol.com
Yitzchak Scott-Thoennes added a new warning against the correct but dubious syntax
$x !=~/foo/;
Dave Mitchell remarked that the bitwise complement ~
doesn't produce
any Use of uninitialized value warning. He fixed it.
Yitzchak Scott-Thoennes posted a summary of the things that should be done to address the current UTF-8 encoding issues without annoying too many people:
encoding::warnings
module already does this for perl 5.8.x), which will
probably be a core warning in perl 5.10http://groups.google.com/groups?selm=20040317044500.GA3720%40efn.org
Sadahiro Tomoyuki is working on this last point.
http://groups.google.com/groups?selm=20040316132246.2972.4%40llama.elixent.com
Jan Dubois sent a patch to add the Win32
module from Gurusamy Sarathy's
libwin32
to bleadperl.
Sadahiro Tomoyuki identified several places where some perl built-ins don't cope with overloaded objects correctly regarding UTF-8 encoding. (bug #27658.)
http://groups.google.com/groups?selm=rt-3.0.8-27658-82032.6.02101148715519%40per l.org
This summary was written by Rafael Garcia-Suarez, from Lyon, France, and it's likely to be the last one that I'll be writing in Lyon. Weekly summaries are published on http://use.perl.org/ and posted on a mailing list, which subscription address is perl5-summary-subscribe@perl.org . Comments and corrections are welcome.