This Week on perl5-porters (25-31 August 2003)

[email protected] (Rafael Garcia-Suarez) Mon, 1 Sep 2003 13:55:25 +0200
Newsgroups perl.perl5.porters,perl.perl5.summary
Message-ID <[email protected]>
This Week on perl5-porters (25-31 August 2003)
  Perl gait and post rate,
  The summarizer watches.
  Read it all below.

Cwd, XSLoader, CPAN
  Ken Williams, who is going to release the Cwd module on CPAN, wants to
  backport it to perl 5.005. However, this involves replacing XSLoader,
  that it uses, by the older DynaLoader -- or, to use a backward
  compatible boilerplate -- or, ultimately, to release on CPAN XSLoader
  itself, as Michael Schwern suggested.

  In fact, Michael even provided a small tarball of XSLoader, repackaged
  for CPAN. He also wrote tests for it and cleaned it up a bit.

      http://xrl.us/rsv
      http://xrl.us/rsw

base.pm
  While we're at it : Randal L. Schwartz reported that the version of the
  "base" module on CPAN (in the Class-Fields distribution) was higher than
  the one currently included in perl 5.8.1.

  Michael Schwern says that a backport of "base" and "fields" must remain
  on CPAN. It's important to note that the CPAN and core versions of those
  modules are functionally equivalent, their only difference being purely
  internal. He added that Class::Field is a failure and should be left
  dying slowly. Nevertheless, he separated the CPAN version of "base" and
  "fields" from Class::Fields, which is going to CPAN as base-2.0. He
  also mentions that he's bored with those modules and "would welcome
  someone to take over the CPAN version".

      http://xrl.us/rsx

next $label
  Mark-Jason Dominus wishes (bug #23614) that "next" could support dynamic
  labels, specified via a variable. (goto supports this.) Enache Adrian
  remarks that this isn't probably worth the performance penalty. Schwern
  quotes Larry.

      http://xrl.us/rsz

Spambench
  Nicholas Clark posted the code of spambench, a simple script aimed at
  benchmarking a perl interpreter against SpamAssassin and a known email
  corpus.

  His results so far : copy-on-write doesn't seem to make a difference in
  speed (perhaps in memory usage ? there aren't memory statistics), and a
  perl interpreter compiled with ithread support is slower by 4/5%.

      http://xrl.us/rs2

Parsing pod fast
  Mark-Jason Dominus proposed a patch to improve the performance of
  Pod::Parser. However, Marek Rouchal (who maintains Pod::Parser) rejected
  it, for reasons pertaining to the correctness of the algorithm : he
  wants the parse tree to contain no empty nodes and no consecutive text
  nodes. Marek also says that Pod::Simple is nowadays considered a better
  alternative to write pod parsers backends.

      http://xrl.us/rs3

tell() in append mode
  Martyn Pearce reports bug #23645 : tell() returns 0 after having opened
  a file in append mode with perl 5.8.x ; but perl 5.6.x returns the real
  file position. Andreas Koenig finds that the patch that changed the
  behaviour of tell() is a patch to the Linux compilation hints file, and
  indeed the bug disappears if perl is configured with
  -Dd_stdstdio=define. Jarkko commited a fix, but labels it as "probably
  wrong".

      http://xrl.us/rs4

In Brief
  Tim Jenness released File::Temp 0.14 (last week, in fact).

  Lukas Mai reported that the prototypes for shift() and pop() should be
  ";\@" instead of "\@". Rafael fixed this, and added a regression test
  for the prototypes of built-ins. (bug #23572.)

  David Coppit reported (bug #23578) that the delete_package() function
  provided by the Symbol module is sometimes so zealous that the deleted
  package can't be reloaded efficiently. Rafael explained this (and why it
  won't probably be fixed in a near future.)

      http://xrl.us/rs5

  Nicholas Clark filed a couple of bugs that were uncovered by valgrind
  (#23753, #23576). One of them involves matching something against a
  regular expression, and then introducing $& at run-time via an
  eval('').

  Tassilo von Parseval found a strange bug involving the scoping of @- and
  @+, used in a tied hash, accessed from the right-hand side of a
  substitution (bug #23624). But the workaround is even stranger.

      http://xrl.us/rs6

About this summary
  This week's summary was written by Rafael Garcia-Suarez. Summaries are
  published weekly on http://use.perl.org/ and on a mailing list, which
  subscription address is [email protected]. Comments and
  corrections are welcome. Yes I know, I'm not good at haikus.