develooper Front page | perl.perl5.porters | Postings from April 2003

This Week on perl5-porters (7-13 April 2003)

Rafael Garcia-Suarez
April 14, 2003 05:05
This Week on perl5-porters (7-13 April 2003)
Message ID:
This Week on perl5-porters (7-13 April 2003)
  This week : MacOS X problems, big and small patch proposals,
  cross-compilation and unknown errors.

use base and import
  Casey West proposed a patch to call the import() method of a module
  referenced through the "use base" pragma. Graham Barr disagrees, saying
  that "use base" should only be used to set up inheritance, and Michael
  Schwern threatens to call the backward compatibility police.

  Redvers Davies complains that there's too little information about the
  cross-compilation of perl. Nevertheless, he successfully produced perl
  packages for the OpenZaurus OS (<>), including
  dynamically loaded extensions, and the ability to cross-compile XS
  modules ! (Perl 5.8.0 has the beginning of a minimal support for
  cross-compilation. Let's hope it can be improved by this impressive

Unknown error
  Tels manages to have perl to emit an actual "Unknown error". This
  obscure message is actually produced by perl when it fails to load a
  module, and fails again to get an error message for this first failure.
  Enache Adrian provided a fix.

OS X peculiarities
  Michael Schwern notices that "nobody", the traditional Unix
  low-privileged user, has user id -2 on MacOS X (according to
  /etc/passwd), but the "uid_t" C type is actually an unsigned integer.
  Consequently, getpwnam() says that "nobody"'s UID is 4294967294. Looks
  logical. We've seen weirder things.

  This doesn't seem to be related to the fact that you can't run perldoc
  as root on MacOS X. That's what Dan Kogai explains after a few tests of
  changing the UID and EUID on various BSD flavors.

  Michael also criticizes the choice of the default vendorlib location
  on OS X. In fact, he doesn't think that vendorlib should be set at all
  in a hints file. Wilfredo Sánchez asks for more info, and is working on
  a patch, both for the Darwin and Rhapsody hints files. (By the way,
  Wilfredo doesn't have a Mac OS X server, so he'll patch blindly unless
  someone wants to test bleadperl and/or maintperl on Rhapsody.)

"h2xs" and enums
  Tassilo von Parseval notices (bug #21887) that "h2xs" doesn't generate
  constants from the enumerated types found in C header files. Nicholas
  Clark explains how to use ExtUtils::Constant to achieve the desired

Big Bug Fixes
  Pradeep Hodigere proposed a patch to speed up some of the perl built-ins
  when handling UTF8 data (and he provided also benchmark results).
  Basically his solution is to add a field "sv_length" to the internal SV
  structure, to hold the length, in chars, of the scalar string value.
  Nobody commented yet.

  Dave Mitchell sent a patch to allow "FETCH to access arrays and hashes
  which are themselves tied without fear of crashing" (a.k.a. nested
  FETCHes). I personally don't understand fully the solution. Nobody
  commented yet. No, wait, Arthur Bergman said it was nice ! and asked for

Beware the precedence police
  Dan Kogai complains that this code :

      print chr(0xE3).chr(0x81).chr(0x82) =~ /^\x{3042}$/ ? 'true' : 'false';

  prints true. Then, he ceases to complain when he realizes that the
  precedence of "." is actually lower than the precedence of "=~". Tom
  Horsley comments that "APL was the only language that ever got
  precedence and associativity correct."

In brief
  Jarkko Hietaniemi reports that Devel::Coverage doesn't work with perl
  5.8.0, while it works with perl 5.6.1 (bug #21890). Randy J. Ray says
  he'll look at it. Stas Bekman suggests that the problem might be similar
  to one he found on Apache::DB.

  Long doubles are now correctly recognized by the Configure script on
  AIX, thanks to John Allen and Merijn Brand. They also improved the
  compiler detection mechanism, if I understood correctly.

  Pierre Denis reports a parsing bug (#21875) involving a hash key which
  is a bareword beginning by "q", and a pair of braces that can be seen as
  a block or as a literal hashref. Dave Mitchell sends a fix.

  Alberto Simões says that it'd be nice to have a function in Data::Dumper
  to dump the structures directly to a chosen filehandle. Patches welcome !

  Nathan Torkington asks a bunch of I/O layer questions, and gets some

About this summary
  This summary was brought to you by Rafael Garcia-Suarez. Weekly
  summaries are available on <> and/or via a mailing
  list, which subscription address is
  Comments, corrections, additions, and suggestions are welcome. Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About