[30078] in Perl-Users-Digest
Perl-Users Digest, Issue: 1321 Volume: 11
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Fri Feb 29 18:09:46 2008
Date: Fri, 29 Feb 2008 15:09:09 -0800 (PST)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Perl-Users Digest Fri, 29 Feb 2008 Volume: 11 Number: 1321
Today's topics:
Re: a very simplistic example of a perl module <jwkenne@attglobal.net>
Re: Book: Applied Perl - sourcecode required <bik.mido@tiscalinet.it>
Re: executing source command from perl <ben@morrow.me.uk>
Re: File::Find calls "wanted" before calling "preproces <bik.mido@tiscalinet.it>
Finding number of file from gzip'ed format <sopan.shewale@gmail.com>
Re: Generate an associative array from a file <rkb@i.frys.com>
Re: Generate an associative array from a file <cartercc@gmail.com>
Re: Hell of a time extracting bits from a vector <ced@blv-sam-01.ca.boeing.com>
Re: Magic $a $b <szrRE@szromanMO.comVE>
Re: Magic $a $b <glex_no-spam@qwest-spam-no.invalid>
Re: Magic $a $b <ben@morrow.me.uk>
Re: question about "requiring" linux/stat.ph <szrRE@szromanMO.comVE>
Recommendation for a SNMP module to collect asset data <not@home.net>
Re: Why `for local $var (LIST) ...' not allowed? <bik.mido@tiscalinet.it>
Re: Why `for local $var (LIST) ...' not allowed? <bik.mido@tiscalinet.it>
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: Fri, 29 Feb 2008 14:34:10 -0500
From: "John W. Kennedy" <jwkenne@attglobal.net>
Subject: Re: a very simplistic example of a perl module
Message-Id: <47c885b7$0$5620$607ed4bc@cv.net>
ccc31807 wrote:
> Perl is perhaps the most useful technology
> invented, but maybe that's why academics don't like it.
No, Perl simply doesn't offer anything particularly new or unique or
historically significant in the field of programming languages, and in
some ways, it's just plain grotty. Learning Perl may be vocational
training, but it's not education. (You don't get a degree in automotive
engineering because you know how to replace the carburetor on a '57
Chevy; you get it by learning metallurgy, and flame-front physics, and
airflow mechanics.)
--
John W. Kennedy
"The whole modern world has divided itself into Conservatives and
Progressives. The business of Progressives is to go on making mistakes.
The business of the Conservatives is to prevent the mistakes from being
corrected."
-- G. K. Chesterton
------------------------------
Date: Fri, 29 Feb 2008 21:16:44 +0100
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: Re: Book: Applied Perl - sourcecode required
Message-Id: <5tpgs31ob3rdd2h8slpu3fvgins7gqv78i@4ax.com>
On Wed, 20 Feb 2008 14:57:55 -0600, brian d foy
<brian.d.foy@gmail.com> wrote:
>In article <e8hor35mgdnn5879en7kefvtec0fu7in27@4ax.com>, mydaj [ROR]
>wrote:
[snip]
>> I bought the above book, I unable to download the source code, as
>> the site www.peterwilliams.net is no longer online. Could anyone point
>> me to another download link.
>
>Do you really want that source? It's a pretty old book and the source
>code mostly pre-dates everything on CPAN. Plese don't learn Perl from
>that book :)
Anyway, mydaj, if you really really want to see that source, then you
may try the wayback machine.
No... actually you *can't*:
http://web.archive.org/web/*/http://www.peterwilliams.net
: Robots.txt Query Exclusion.
:
: We're sorry, access to http://www.peterwilliams.net has been blocked by the site owner via robots.txt.
Michele
--
{$_=pack'B8'x25,unpack'A8'x32,$a^=sub{pop^pop}->(map substr
(($a||=join'',map--$|x$_,(unpack'w',unpack'u','G^<R<Y]*YB='
.'KYU;*EVH[.FHF2W+#"\Z*5TI/ER<Z`S(G.DZZ9OX0Z')=~/./g)x2,$_,
256),7,249);s/[^\w,]/ /g;$ \=/^J/?$/:"\r";print,redo}#JAPH,
------------------------------
Date: Fri, 29 Feb 2008 19:49:18 +0000
From: Ben Morrow <ben@morrow.me.uk>
Subject: Re: executing source command from perl
Message-Id: <u64m95-884.ln1@osiris.mauzo.dyndns.org>
Quoth "Mario D'Alessio" <dalessio@motorola.NOSPAM.com>:
>
> "david" <michaelgang@gmail.com> wrote in message
> news:5d735027-6b9e-4b2f-80d5-f77d1ffcbee4@i12g2000prf.googlegroups.com...
> > On Feb 28, 3:28 pm, Peter Makholm <pe...@makholm.net> wrote:
> >> david <michaelg...@gmail.com> writes:
> >> > run_command('source init_file');
> >> > run_command('mycommand.pl -configfile config -exec ');
> >>
> >> I'm guessing that you are trying to read some environment variables
> >> from init_file before running mycommand.pl?
> >>
> >> That won't work. First problem is that source is a shell builtin and
> >> not an independent program, this is why you are getting an
> >> error. Another problem is that child processes can't set environment
> >> variables if the parrent process and even if source was a real
> >> program, it couldn't set the environment for mycommand.pl
> >
> > I understand, so it is better for this purpose to write a shell
> > script .
> > Thank you very much for your quick answer,
>
> Not necessarily. You could do something like this:
>
> run_command(qq!sh -c "source init_file; mycommand.pl -configfile
> config -exec" !);
This is somewhat pointless. Simply using perl to run sh for you is
evidence that sh would have been a better tool in the first place :).
The module Shell::GetEnv will allow you to extract the environment from
a subshell:
use Shell::GetEnv;
Shell::GetEnv->new(sh => 'source init_file')->import_envs;
run_command 'mycommand.pl...';
Also, the IPC::Run module is a much more convenient and reliable way of
running external commands that rolling your own using system.
Ben
------------------------------
Date: Fri, 29 Feb 2008 21:32:15 +0100
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: Re: File::Find calls "wanted" before calling "preprocess"
Message-Id: <vfqgs3ded67lbpvq60i0lnbc4994vauv2f@4ax.com>
On Mon, 25 Feb 2008 13:12:38 -0800 (PST), yary <not.com@gmail.com>
wrote:
>File::Find always calls "wanted" with "." before calling preprocess
>for the first directory. I can work around it, but it doesn't seem
>right: the docs say "Your preprocessing function is called after
>readdir(), but before the loop that calls the wanted() function."
>
>Or is there a subtle reason why find calls "wanted" with ".", before
>letting preprocess change the list of entries, which I should be
>appreciating?
>
>A simple program illustrating the order of calls-
>
>#!/usr/bin/perl
>use File::Find;
>sub wanted { print " I found entry $_\n" }
>sub pre { print " Entering $File::Find::dir\n"; @_}
>sub post {print " leaving $File::Find::dir\n";}
>find ({wanted => \&wanted, preprocess => \&pre, postprocess =>
>\&post },'.');
Because '.' is passed verbatim by you, not retrieved with readdir().
One workaround to do what you want would be File::Find to be patched
in such a way that it has a getentries() routine after which
preprocess is called. getentries() would return the list of supplied
arguments on top level, and readdir()'s output otherwise. Personally I
don't see much need for this additional level of indirection.
Actually, I have this dup files removal tiny utility of mine in which
I use preprocess() to sort the entries, because... well I like it like
that, BUT not on toplevel, so that if I say
rmdups more_important less_important
then files in more_important are given some priority over
less_important's, if you get what I mean...
Michele
--
{$_=pack'B8'x25,unpack'A8'x32,$a^=sub{pop^pop}->(map substr
(($a||=join'',map--$|x$_,(unpack'w',unpack'u','G^<R<Y]*YB='
.'KYU;*EVH[.FHF2W+#"\Z*5TI/ER<Z`S(G.DZZ9OX0Z')=~/./g)x2,$_,
256),7,249);s/[^\w,]/ /g;$ \=/^J/?$/:"\r";print,redo}#JAPH,
------------------------------
Date: Fri, 29 Feb 2008 11:58:05 -0800 (PST)
From: "sopan.shewale@gmail.com" <sopan.shewale@gmail.com>
Subject: Finding number of file from gzip'ed format
Message-Id: <540c2b40-7aa4-4f3e-ae79-58b597a7f9a5@s13g2000prd.googlegroups.com>
Hi,
I am not sure if this is the right group to ask this question - i am
sorry if this is not the right place.
Problem: Let us say we have file called "myfile.txt". The size of the
file is huge. The file is gziped - the gziped filename is
"myfile.txt.gz". I am interested to find the number of lines of
myfile.txt from myfile.txt.gz without gunziping it.
I know if it is allowed to gunzip then just use "gunzip -c
myfile.txt.gz | wc -l" this can give the number of lines.
My problem is time taken to gunzip is huge file is very large.
Is there any way to count the number of lines using Perl script/Any
other method - just to figure out number of "\n" chars hidden inside
the file-use something from the algorithm of gzip?
Appreciate your time efforts to read the problem and thank you so much
for investing time to read this problem.
Please help me with solution or pointers to read (already reading
http://www.gzip.org/algorithm.txt).
--sopan
------------------------------
Date: Fri, 29 Feb 2008 12:27:38 -0800 (PST)
From: Ron Bergin <rkb@i.frys.com>
Subject: Re: Generate an associative array from a file
Message-Id: <4eebf8c6-7315-496c-8d57-754e303b28f9@s13g2000prd.googlegroups.com>
On Feb 29, 7:28 am, ccc31807 <carte...@gmail.com> wrote:
> On Feb 29, 8:58 am, Peter Makholm <pe...@makholm.net> wrote:
>
> > ccc31807 <carte...@gmail.com> writes:
> > > This is what Perl does, for goodness sake!
>
> > Forcing you to reinvent existing wheel? But why oh why?
>
> No, not reinventing the wheel. Just using the wheel for its intended
> purpose.
>
> Actually, writing a module to do what Perl will natively do anyway
> seems reinventing the wheel to me. If you can do something directly
> with a function, or indirectly with a module that might call the
> function or duplicate its functionality, why not do it directly?
>
> CC
If you follow that logic, then you're also saying that a very large
percentage of the modules on cpan are reinventing the wheel and should
not be used. To me, that seems like pretty flaky logic. It sounds
like you don't believe in the idea of code reuse.
------------------------------
Date: Fri, 29 Feb 2008 12:41:09 -0800 (PST)
From: ccc31807 <cartercc@gmail.com>
Subject: Re: Generate an associative array from a file
Message-Id: <f96e92d8-1773-4fcc-bf61-75fb66b3492b@e6g2000prf.googlegroups.com>
On Feb 29, 3:27 pm, Ron Bergin <r...@i.frys.com> wrote:
> > Actually, writing a module to do what Perl will natively do anyway
> > seems reinventing the wheel to me. If you can do something directly
> > with a function, or indirectly with a module that might call the
> > function or duplicate its functionality, why not do it directly?
>
> > CC
>
> If you follow that logic, then you're also saying that a very large
> percentage of the modules on cpan are reinventing the wheel and should
> not be used. To me, that seems like pretty flaky logic. It sounds
> like you don't believe in the idea of code reuse.
Not at all. Just the opposite. When you have code that does what you
want and has been tested and used by others, use it. When you have
code that doesn't do what you want, that hasn't been tested and used,
don't use it.
All things being equal, it's much better to use a built-in function
that has been proven effective over a period of years than it is to
use a module that hasn't been proven effective and that attempts to
duplicate the functionality of the in built function.
Why is advice to use the built in Perl functions an indication that I
don't believe in code reuse? Seems just the opposite to me.
(I'm not offering an opinion on the effectiveness or safety of any
module, just saying that you don't need to overlook the capabilities
of the language simply because some module purports to do what you
want.)
CC
------------------------------
Date: Fri, 29 Feb 2008 12:25:39 -0800 (PST)
From: "comp.llang.perl.moderated" <ced@blv-sam-01.ca.boeing.com>
Subject: Re: Hell of a time extracting bits from a vector
Message-Id: <9b98ea07-3cf6-452a-9c58-24bed55e3dba@s13g2000prd.googlegroups.com>
On Feb 29, 9:09 am, Idgarad <idga...@gmail.com> wrote:
> I am generating a SHA1 digest that I want to use for some values.
>
> I want to take the digest that is generated at extact a given number
> of bits, in sequence.
>
> SHA1 generates 160 bits.
>
> I would like to partition that 160 bits into an array storing the
> value of those bits
>
> for instance (in short form using only 10 bits grabbing 2 at a time)
> lets say I have:
>
> 1010010101
>
> and I am grabbing pairs I need (from least to most):
>
> @somearray
>
> $somearray[0] = 1 (01)
> $somearray[1] = 1 (01)
> $somearray[2] = 1 (01)
> $somearray[3] = 2 (10)
> $somearray[4] = 2 (10)
>
> I I tried using vec (going back to the full 160 bits) but it fails
> miserably. Here a sample
>
> Using vec($digest,$loop*8,8) (Grabbing 8 bits)
>
> I would get
> 0101010101
> 1101011010
> 100101001010101101
> 010110110101011101
> ...
>
> The lengths would be wrong (doing an unpack "b*" on the array that was
> holding the result. Sometimes I would get 8, other 16 and the number
> even changes running the same data!)
you are probably forgetting that you need
to pack to an integer or short before you
you unpack to the bit string, eg,
# perl -le 'print unpack "B*",136'
001100010011001100110110
vs.
# perl -le 'print unpack "B*",pack("S",136)'
0000000010001000
--
Charles DeRykus
------------------------------
Date: Fri, 29 Feb 2008 14:27:13 -0800
From: "szr" <szrRE@szromanMO.comVE>
Subject: Re: Magic $a $b
Message-Id: <fqa0s20sf8@news2.newsguy.com>
Joost Diepenmaat wrote:
> Achim Peters <achimpeters@gmx.de> writes:
>
>> which in fact does print the 4711 (a German "magic" number) with Perl
>> 5.8.2, thus no side effects of the sorting (except of course that the
>> missing "my" in front of $a does not cause an compile error.
>>
>> Is there any example to prove his impertinence of questioning the
>> gurus' wisdom?
>
> I would think:
>
> sub srt {
> my @arr = qw /x a u q r/;
> @arr = sort { $a cmp $b } @arr;
> }
>
> srt();
> my $a = 4711;
> print "$a\n";
>
> versus:
>
> srt();
> my $a = 4711;
> print "$a\n";
>
> sub srt {
> my @arr = qw /x a u q r/;
> @arr = sort { $a cmp $b } @arr;
> }
>
> would be enough reason not to use $a and $b.
When I try the latter, I get the following, using Perl 5.8.8:
Can't use "my $a" in sort comparison at line 9.
0001: #!/usr/local/bin/perl -w
0002: my @arr = srt();
0003: my $a = 4711;
0004: print "$a\n";
0005: print join (', ', @arr);
0006:
0007: sub srt {
0008: my @arr = qw /x a u q r/;
0009: @arr = sort { $a cmp $b } @arr;
0010: }
The error message itself seems to be wrong, or more percisely, the wrong
error for the given situation. There is no "my" in the "sort { ... }"
clause. Is this be a bug?
Furthur, why does it generate an error in the first place?
--
szr
------------------------------
Date: Fri, 29 Feb 2008 16:41:47 -0600
From: "J. Gleixner" <glex_no-spam@qwest-spam-no.invalid>
Subject: Re: Magic $a $b
Message-Id: <47c88a2c$0$37687$815e3792@news.qwest.net>
szr wrote:
> Joost Diepenmaat wrote:
>> Achim Peters <achimpeters@gmx.de> writes:
>>
>>> which in fact does print the 4711 (a German "magic" number) with Perl
>>> 5.8.2, thus no side effects of the sorting (except of course that the
>>> missing "my" in front of $a does not cause an compile error.
>>>
>>> Is there any example to prove his impertinence of questioning the
>>> gurus' wisdom?
>> I would think:
>>
>> sub srt {
>> my @arr = qw /x a u q r/;
>> @arr = sort { $a cmp $b } @arr;
>> }
>>
>> srt();
>> my $a = 4711;
>> print "$a\n";
>>
>> versus:
>>
>> srt();
>> my $a = 4711;
>> print "$a\n";
>>
>> sub srt {
>> my @arr = qw /x a u q r/;
>> @arr = sort { $a cmp $b } @arr;
>> }
>>
>> would be enough reason not to use $a and $b.
>
> When I try the latter, I get the following, using Perl 5.8.8:
>
> Can't use "my $a" in sort comparison at line 9.
>
> 0001: #!/usr/local/bin/perl -w
> 0002: my @arr = srt();
> 0003: my $a = 4711;
> 0004: print "$a\n";
> 0005: print join (', ', @arr);
> 0006:
> 0007: sub srt {
> 0008: my @arr = qw /x a u q r/;
> 0009: @arr = sort { $a cmp $b } @arr;
> 0010: }
>
>
> The error message itself seems to be wrong, or more percisely, the wrong
> error for the given situation. There is no "my" in the "sort { ... }"
> clause. Is this be a bug?
>
> Furthur, why does it generate an error in the first place?
Are you kidding??????????
You're supposed to get an error. That's the reason Joost
posted the very concise example - to show the OP why
it might be bad to use $a.
------------------------------
Date: Fri, 29 Feb 2008 22:53:18 +0000
From: Ben Morrow <ben@morrow.me.uk>
Subject: Re: Magic $a $b
Message-Id: <uvem95-t7a.ln1@osiris.mauzo.dyndns.org>
Quoth "szr" <szrRE@szromanMO.comVE>:
> Joost Diepenmaat wrote:
> >
> > I would think:
<snip>
> >
> > srt();
> > my $a = 4711;
> > print "$a\n";
> >
> > sub srt {
> > my @arr = qw /x a u q r/;
> > @arr = sort { $a cmp $b } @arr;
> > }
> >
> > would be enough reason not to use $a and $b.
>
> When I try the latter, I get the following, using Perl 5.8.8:
>
> Can't use "my $a" in sort comparison at line 9.
>
> The error message itself seems to be wrong, or more percisely, the wrong
> error for the given situation. There is no "my" in the "sort { ... }"
> clause. Is this be a bug?
No, it's not. The point is that the $a in scope at line 9 is the 'my $a'
from five lines earlier, rather that the global $main::a in scope at the
start of the program, and sort (for various nasty implementation-specfic
reasons) can't use a lexical $a. This is exactly why you shouldn't use
$a other than for sort.
Ben
------------------------------
Date: Fri, 29 Feb 2008 12:46:44 -0800
From: "szr" <szrRE@szromanMO.comVE>
Subject: Re: question about "requiring" linux/stat.ph
Message-Id: <fq9qvl0nn6@news2.newsguy.com>
Ben Morrow wrote:
> Quoth "szr" <szrRE@szromanMO.comVE>:
>> Hello. I am wrapping up a rather large server migration job I was
>> tasked with. Everything is running wonderfully.
>>
>> One thing I noticed in a few legacy Perl scripts that had
>> <code>require "linux/stat.ph";</code> near the top and making use of
>> functions like S_ISLNK, resulting in this sort of error, which can
>> be easily reproduced:
>>
>> $ perl -e 'require "linux/stat.ph"; &S_ISLNK'
>> Undefined subroutine &main::S_ISLNK called at -e line 1.
>
> You should be importing these constants from Fcntl with non-ancient
> versions of Perl. h2ph can't always cope with the complicated
> conditional definitions in Linux' system headers, so sometimes the
> generated .ph files are not useable.
>
> perl -MFcntl=:mode -le'print S_ISLNK(S_IFLNK)'
>
> Generally speaking you can just use -l instead, though.
>
> Ben
Thank you for the information.
-szr
------------------------------
Date: Fri, 29 Feb 2008 22:04:06 +0100
From: Tom Brown <not@home.net>
Subject: Recommendation for a SNMP module to collect asset data from Cisco devices
Message-Id: <2008022922040616807-not@homenet>
Hello,
There are plenty SNMP modules out there and I would like to ask for
some recommendations. The goal is to gather asset data from Cisco
devices by SNMP and to aggregate it in an Excel sheet using
Spreadsheet::WriteExcel.
In order to be most flexible I would define the OID's (the return
values will contain the values like device model, hostname, chassis,
serial-number and so on) as plain ascii file and pass it to the script
as option.
My approach for the processing itself is to store the returned values
for each polled OID into a hash (per device) and when completed to
append one row per device using Spreadsheet::WriteExcel.
So far the demand and my ideas.
Which SNMP module could provide the best functions for my demand?
Regards,
Tom
------------------------------
Date: Fri, 29 Feb 2008 21:08:14 +0100
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: Re: Why `for local $var (LIST) ...' not allowed?
Message-Id: <5cpgs3djfhs6j4ghqie9bpffm87u9d3rtm@4ax.com>
On Sun, 17 Feb 2008 22:10:52 -0600, Tad J McClellan
<tadmc@seesig.invalid> wrote:
>> Or did you answer the question?
>
>
>He did.
>
>If you researched the answers to his 4 questions, you would have
>learned how to localize foreach's loop control variable, along
>with 3 other things that are important to understand if you
>hope to do much programming in Perl.
I beg to differ. He wasn't asking about *how* to localize for's loop
control variable, but why local() is not valid *syntax* there: that it
would be pretty much useless being a possible answer, albeit not a
compelling one. I for one think it *may* be made valid, with the
obvious semantics associated to it. But that's just because it's in my
nature to strive for consistency, which indeed may in turn be
completely out of place in Perl (5)'s realms...
Michele
--
{$_=pack'B8'x25,unpack'A8'x32,$a^=sub{pop^pop}->(map substr
(($a||=join'',map--$|x$_,(unpack'w',unpack'u','G^<R<Y]*YB='
.'KYU;*EVH[.FHF2W+#"\Z*5TI/ER<Z`S(G.DZZ9OX0Z')=~/./g)x2,$_,
256),7,249);s/[^\w,]/ /g;$ \=/^J/?$/:"\r";print,redo}#JAPH,
------------------------------
Date: Fri, 29 Feb 2008 21:12:57 +0100
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: Re: Why `for local $var (LIST) ...' not allowed?
Message-Id: <8lpgs3pvgqggho6k2s6jo0vh8ar6srfdup@4ax.com>
On Mon, 18 Feb 2008 08:23:06 GMT, Uri Guttman <uri@stemsystems.com>
wrote:
> T> I don't want to use local. I like to use `my' here. But I just want to
> T> know why `local' is not allowed here, so i put the example.
>
>then why do you care about local? you rarely need it and it is not
Some people, like me, are often concerned about consistency in
programming language concepts. It's just not always a matter of
"getting things done".
> >> do you also know not to use $a (even in examples) as it is special cased with strict?
> T> The result is same if use `$aaa' instead of $a, even i know $a is
> T> magical, but why bother to be boring of this?
>
>boring?
I presume he may mean annoying. For some reason the Italian verb
"annoiare," which has the same source of "to annoy," does not
translate directly into the latter, but into "to bore." Todd may not
be a native English speaker, and have incurred in a similar problem.
Michele
--
{$_=pack'B8'x25,unpack'A8'x32,$a^=sub{pop^pop}->(map substr
(($a||=join'',map--$|x$_,(unpack'w',unpack'u','G^<R<Y]*YB='
.'KYU;*EVH[.FHF2W+#"\Z*5TI/ER<Z`S(G.DZZ9OX0Z')=~/./g)x2,$_,
256),7,249);s/[^\w,]/ /g;$ \=/^J/?$/:"\r";print,redo}#JAPH,
------------------------------
Date: 6 Apr 2001 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin)
Subject: Digest Administrivia (Last modified: 6 Apr 01)
Message-Id: <null>
Administrivia:
#The Perl-Users Digest is a retransmission of the USENET newsgroup
#comp.lang.perl.misc. For subscription or unsubscription requests, send
#the single line:
#
# subscribe perl-users
#or:
# unsubscribe perl-users
#
#to almanac@ruby.oce.orst.edu.
NOTE: due to the current flood of worm email banging on ruby, the smtp
server on ruby has been shut off until further notice.
To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.
#To request back copies (available for a week or so), send your request
#to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
#where x is the volume number and y is the issue number.
#For other requests pertaining to the digest, send mail to
#perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
#sending perl questions to the -request address, I don't have time to
#answer them even if I did know the answer.
------------------------------
End of Perl-Users Digest V11 Issue 1321
***************************************