[29953] in Perl-Users-Digest
Perl-Users Digest, Issue: 1196 Volume: 11
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Tue Jan 15 00:09:38 2008
Date: Mon, 14 Jan 2008 21:09:05 -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 Mon, 14 Jan 2008 Volume: 11 Number: 1196
Today's topics:
reading file on a different machine dcruncher4@aim.com
Re: reading file on a different machine <ben@morrow.me.uk>
Re: Referencing modules nested in a directory structure <ben@morrow.me.uk>
Re: Shebang line management <ben@morrow.me.uk>
Re: USEFUL perl SCRIPT: NTP verifier <gburnore@databasix.com>
Re: USEFUL perl SCRIPT: NTP verifier <gburnore@databasix.com>
Re: USEFUL perl SCRIPT: NTP verifier <gburnore@databasix.com>
Re: USEFUL perl SCRIPT: NTP verifier <jimsgibson@gmail.com>
Re: USEFUL perl SCRIPT: NTP verifier <gburnore@databasix.com>
Re: USEFUL perl SCRIPT: NTP verifier <john@castleamber.com>
Re: USEFUL perl SCRIPT: NTP verifier <gburnore@databasix.com>
Re: USEFUL perl SCRIPT: NTP verifier <ignoramus5390@NOSPAM.5390.invalid>
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: 14 Jan 2008 18:00:03 -0800
From: dcruncher4@aim.com
Subject: reading file on a different machine
Message-Id: <fmh43301phv@drn.newsguy.com>
Hi,
I am writing a script which has to execute very fast since it is part of
an alert script. One of the things it needs to do is to read a config
file sitting on a remote machine.
I need to accomplish two things:
a - Read the file creation time/update time of the config file
on the remote machine.
b. read the contents of it.
How can it be done in Perl. Which modules to use.
TIA.
------------------------------
Date: Tue, 15 Jan 2008 02:50:38 +0000
From: Ben Morrow <ben@morrow.me.uk>
Subject: Re: reading file on a different machine
Message-Id: <ukjt55-igg1.ln1@osiris.mauzo.dyndns.org>
Quoth dcruncher4@aim.com:
>
> I am writing a script which has to execute very fast since it is part of
> an alert script. One of the things it needs to do is to read a config
> file sitting on a remote machine.
>
> I need to accomplish two things:
>
> a - Read the file creation time/update time of the config file
> on the remote machine.
>
> b. read the contents of it.
>
> How can it be done in Perl. Which modules to use.
How would you do it without Perl? NFS? ssh? Windows Networking? If the
file can be accessed normally on your machine (if it's on a networked
filesystem you can access) you can use File::stat (or the stat builtin)
and File::Slurp to do what you ask, although note that unless you are on
Win32 files don't generally have a 'creation time' you can easily read
from Perl. Under Win32 the ctime member of the stat structure contains
the creation time (this is *not* the case under other OSs). If you need
to get at the file more indirectly, you will have to tell us how.
Ben
------------------------------
Date: Mon, 14 Jan 2008 23:24:00 +0000
From: Ben Morrow <ben@morrow.me.uk>
Subject: Re: Referencing modules nested in a directory structure
Message-Id: <gh7t55-bod1.ln1@osiris.mauzo.dyndns.org>
Quoth David Smith <davidsmith@hotmail.com>:
> Pardon the rookie question, but I haven't been able to find an answer
> in either the Camel book or a web search.
>
> I'm coming to Perl from a Java background... where you import classes
> using a fully-qualified name, and then generally make use of it using
> the base class name:
>
> import myapp.dataojects.User;
> ...
> User myUser = new User();
>
> I've been emulating the same convention as far as organizing my Perl
> modules in a directory structure based on functionality. However, I
> find that when using them I have to always use the fully-qualified name:
>
> use MyApp::DataObjects::User;
> ...
> my $myUser = MyApp::DataObjects::User->new();
Yup.
> Is there any syntax by which I could access Perl objects by using the
> object name alone, rather than the fully-qualified name? Such as this:
>
> use MyApp::DataObjects::User;
> ...
> my $myUser = User->new();
Nope, sorry :(. This is one of the flaws in Perl's package system, IMHO.
One thing that may allieviate the pain is that a package (class) name is
simply a string in Perl, so you can use a variable:
use MyApp::DataObjects::User;
my $USER = 'MyApp::DataObjects::User';
my $myUser = $USER->new;
If you were feeling evil you could even export this variable from
MA::DO::U by default.
Ben
------------------------------
Date: Mon, 14 Jan 2008 23:17:43 +0000
From: Ben Morrow <ben@morrow.me.uk>
Subject: Re: Shebang line management
Message-Id: <n57t55-bod1.ln1@osiris.mauzo.dyndns.org>
Quoth "A. Sinan Unur" <1usa@llenroc.ude.invalid>:
> Steve <SteveSpamTrap@yahoo.com> wrote in
> news:5v1lp2F1jn5dpU1@mid.individual.net:
>
> > Are there any clever ways of dealing with portability of the
> > "shebang"
> > line... when moving Perl scripts across machines (and across operating
> > systems), where the path to Perl may be different?
>
> This has been asked and answered on this group many times. The question
> is somewhat off-topic.
Huh? How is it off-topic? Is it less OT if I tell you the correct answer
is 'use MakeMaker', which has a facility to do this for you?
That is, package up your scripts into a proper CPAN-like distribution
(it's not difficult), and tweak the Makefile.PL (or Build.PL, if you
must) to install the scripts where you want them. You need to set the
MakeMaker parameter INSTALLSCRIPT to something sensible, probably by
prompting the user to ask where the CGI directory lives (unless you can
work it out).
Ben
------------------------------
Date: Mon, 14 Jan 2008 18:22:02 -0500
From: Gary L. Burnore <gburnore@databasix.com>
Subject: Re: USEFUL perl SCRIPT: NTP verifier
Message-Id: <fmgqqc$7p5$2@blackhelicopter.databasix.com>
Keywords: Eat Shit Die
On 14 Jan 2008 18:10:25 GMT, John Bokma <john@castleamber.com> wrote:
>Ignoramus5390 <ignoramus5390@NOSPAM.5390.invalid> wrote:
>
>> On 2008-01-14, John Bokma <john@castleamber.com> wrote:
>
>[..]
>
>>> undef is the default value, I wouldn't assign it explicitly.
>>
>> I like this style. Makes it very explicit.
>
>IMO Perl programmers should know that the default is undef, and hence no
>need to assign undef. To confuse matters a bit more (IMO), you set $bad
>to undef, yet you assign later on 1 to it (in case of an error), and at
>the end of the script you test if $bad .... I try to avoid testing for
>undef that way, and I try to avoid to use 1/undef as a true/false. In
>short, I would've used something like:
Yep. Setting it to undef is $bad programming.
>OK, clear. That's something you've read to write this, but someone who
>reads your program does not always have to be familiar with this
>documentation, nor has to read it first IMO.
>
> my $roundtrip_delay = ($T4 - $T1) - ($T2 - $T3);
>
>v.s.
>
> my $roundtrip_delay = ( $destination_ts - $originate_ts )
> - ( $receive_ts - $transmit_ts );
>
>which is more readable?
The second, of course. Both would fail in my classes though because
there's no commenting. :)
Setting short vars like t1 t2 ... may work in a very short program
where no one is EVER going to follow behind you and maintain said
code. But when does that ever really happen.
--
gburnore at DataBasix dot Com
---------------------------------------------------------------------------
How you look depends on where you go.
---------------------------------------------------------------------------
Gary L. Burnore | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
Official .sig, Accept no substitutes. | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ 0 1 7 2 3 / Ý³Þ 3 7 4 9 3 0 Û³
Black Helicopter Repair Services, Ltd.| Official Proof of Purchase
===========================================================================
------------------------------
Date: Mon, 14 Jan 2008 18:23:42 -0500
From: Gary L. Burnore <gburnore@databasix.com>
Subject: Re: USEFUL perl SCRIPT: NTP verifier
Message-Id: <fmgqtg$7p5$3@blackhelicopter.databasix.com>
Keywords: Eat Shit Die
On Tue, 15 Jan 2008 07:29:06 +1100, Martien Verbruggen
<mgjv@tradingpost.com.au> wrote:
>On 14 Jan 2008 18:10:25 GMT,
> John Bokma <john@castleamber.com> wrote:
>> Ignoramus5390 <ignoramus5390@NOSPAM.5390.invalid> wrote:
>>
>>> On 2008-01-14, John Bokma <john@castleamber.com> wrote:
>
>>>> If you need to explain what IDs mean it clearly shows that the names
>>>> of your variables are not chosen well.
>>>
>>> They come from NTP specification.
>>
>> OK, clear. That's something you've read to write this, but someone who
>> reads your program does not always have to be familiar with this
>> documentation, nor has to read it first IMO.
>>
>> my $roundtrip_delay = ($T4 - $T1) - ($T2 - $T3);
>>
>> v.s.
>>
>> my $roundtrip_delay = ( $destination_ts - $originate_ts )
>> - ( $receive_ts - $transmit_ts );
>>
>> which is more readable?
>
>To me the first one is more readable.
Feh.
>While long variable names are good
>in many ways, sometimes they hinder the easy parsing of expressions,
>because too much wrap and distance gets in the way.
HUH? He used two lines instead of one and that's bad? Please.
>
>For me it's much easier to see what the expression does int he first
>instance than in the second, even if the precise meaning of each
>variable is not that clear.
Really? How do you know what T1 - T4 are? Guess? No, you'd have to
go read them somewhere else. So much for your wrap and distance
getting in the way.
--
gburnore at DataBasix dot Com
---------------------------------------------------------------------------
How you look depends on where you go.
---------------------------------------------------------------------------
Gary L. Burnore | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
Official .sig, Accept no substitutes. | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ 0 1 7 2 3 / Ý³Þ 3 7 4 9 3 0 Û³
Black Helicopter Repair Services, Ltd.| Official Proof of Purchase
===========================================================================
------------------------------
Date: Mon, 14 Jan 2008 18:27:58 -0500
From: Gary L. Burnore <gburnore@databasix.com>
Subject: Re: USEFUL perl SCRIPT: NTP verifier
Message-Id: <fmgr5g$7p5$4@blackhelicopter.databasix.com>
Keywords: Eat Shit Die
On Mon, 14 Jan 2008 13:41:25 -0600, Ignoramus5390
<ignoramus5390@NOSPAM.5390.invalid> wrote:
>On 2008-01-14, John Bokma <john@castleamber.com> wrote:
>> Ignoramus5390 <ignoramus5390@NOSPAM.5390.invalid> wrote:
>>
>>> I am confused about all this. One server supplied on command line is
>>> enough to do useful tests. Just one, not two or three.
>>
>> Me too, I would use something like:
>>
>> @servers
>> or die "usage: ... query-ntp [--detail] [--limit=N] host [host ... ]
>>
>> moreover, if you're supporting --usage, you might want to put the message
>> in a sub:
>>
>>
>> @servers or show_usage_and_die();
>>
>>:
>>
>> sub show_usage {
>>
>> die ....
>> }
>>
>>
>here's my new version, incorporating usage. It will be my new pattern
>to follow:
>######################################################################
I assume that the ######## is NOT your first line
>#!/usr/bin/perl
>
># See Also:
># http://www.webreference.com/programming/perl/ntp/
># http://www.webreference.com/programming/perl/ntp/2.html
>
>#
># Copyright(C) Igor Chudov, 2008.
># Released under GNU Public License version 3.
>#
>
>use strict;
>use warnings;
>
>use Data::Dumper;
>use Getopt::Long;
>use Net::NTP;
>use Time::HiRes qw( time );
>
>my $detail = undef;
>my $limit = undef;
>my $help = undef;
>
>sub usage {
> my ($msg) = @_;
> print "ERROR: $msg\n\n";
> print STDERR "Usage: $0 [--detail] [--limit=N] host {host}\n";
> exit ($msg ? 1 : 0);
>}
>
>GetOptions(
> "detail!" => \$detail,
> "limit=f" => \$limit,
> "help!" => \$help,
> );
>
>my @servers = @ARGV;
>
>usage if $help;
>usage "detail and limit are mutually exclusive" if $detail and $limit;
>usage "You need to supply one or more servers" unless (@servers);
>
>my $bad = undef;
>
>foreach my $server (@servers) {
> my $t0 = time;
> my %h = get_ntp_response( $server );
>
>
> #Timestamp Name ID When Generated
> #------------------------------------------------------------
> #Originate Timestamp T1 time request sent by client
> #Receive Timestamp T2 time request received by server
> #Transmit Timestamp T3 time reply sent by server
> #Destination Timestamp T4 time reply received by client
> #
> #The roundtrip delay d and local clock offset t are defined as
> #
> #d = (T4 - T1) - (T2 - T3) t = ((T2 - T1) + (T3 - T4)) / 2
>
> my $T1 = $t0;
> my $T2 = $h{'Receive Timestamp'};
> my $T3 = $h{'Transmit Timestamp'};
>
> my $T4 = time; # From Time::HiRes! Accurate to usec!
>
> my $roundtrip_delay = ($T4 - $T1) - ($T2 - $T3);
> my $local_clock_offset = (($T2 - $T1) + ($T3 - $T4)) / 2;
> my $duration = $T4-$t0;
> my $delta = $T2-$T1 - $duration/2;
>
> if( $limit ) {
> if( $delta > $limit || -$delta < -$limit) {
> print "Server $server OFF by $delta seconds!!!\n";
> $bad = 1;
> } else {
> print "Server $server OK, delta is $delta seconds!!!\n";
> }
>
> } else {
> if( $detail ) {
> print Dumper( \%h ) . "\nt0=$t0, T4=$T4\ndelay=$roundtrip_delay, offset=$local_clock_offset\nelapsed=$duration, delta=$delta\n\n";
> } else {
> #print "$server delay=$roundtrip_delay, offset=$local_clock_offset, delta=$delta, duration=$duration\n";
> print sprintf( "%-30s %.5f\n", $server, $local_clock_offset );
> }
> }
>}
>
>exit 1 if $bad;
Still don't care for the T1-T4 and t0 and, frankly, missing spaces
between = symbols is most annoying.
--
gburnore at DataBasix dot Com
---------------------------------------------------------------------------
How you look depends on where you go.
---------------------------------------------------------------------------
Gary L. Burnore | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
Official .sig, Accept no substitutes. | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ 0 1 7 2 3 / Ý³Þ 3 7 4 9 3 0 Û³
Black Helicopter Repair Services, Ltd.| Official Proof of Purchase
===========================================================================
------------------------------
Date: Mon, 14 Jan 2008 15:43:50 -0800
From: Jim Gibson <jimsgibson@gmail.com>
Subject: Re: USEFUL perl SCRIPT: NTP verifier
Message-Id: <140120081543507190%jimsgibson@gmail.com>
In article <fmgr5g$7p5$4@blackhelicopter.databasix.com>, Gary L.
Burnore <gburnore@databasix.com> wrote:
> On Mon, 14 Jan 2008 13:41:25 -0600, Ignoramus5390
> <ignoramus5390@NOSPAM.5390.invalid> wrote:
>
> >here's my new version, incorporating usage. It will be my new pattern
> >to follow:
> >######################################################################
>
[some code snipped]
> >
> >my $detail = undef;
> >my $limit = undef;
> >my $help = undef;
> >
[more code snipped]
> > if( $detail ) {
> > print Dumper( \%h ) . "\nt0=$t0, T4=$T4\ndelay=$roundtrip_delay,
> > offset=$local_clock_offset\nelapsed=$duration, delta=$delta\n\n";
> > } else {
> > #print "$server delay=$roundtrip_delay, offset=$local_clock_offset,
> > delta=$delta, duration=$duration\n";
> > print sprintf( "%-30s %.5f\n", $server, $local_clock_offset );
> > }
> > }
> >}
> >
> >exit 1 if $bad;
>
> ... frankly, missing spaces
> between = symbols is most annoying.
There are spaces around each '=' in every assignment statement. The
only '=' without surrounding spaces are in print statements, which
appear to be debug statements. I do the same thing in my code --
snuggle up the preceding and succeeding characters in a print statement
-- to see if there is any whitespace in the variables I am printing.
Readability of the output is not the issue; it is done for accuracy of
results.
--
Jim Gibson
Posted Via Usenet.com Premium Usenet Newsgroup Services
----------------------------------------------------------
** SPEED ** RETENTION ** COMPLETION ** ANONYMITY **
----------------------------------------------------------
http://www.usenet.com
------------------------------
Date: Mon, 14 Jan 2008 18:51:49 -0500
From: Gary L. Burnore <gburnore@databasix.com>
Subject: Re: USEFUL perl SCRIPT: NTP verifier
Message-Id: <fmgsi7$bhd$1@blackhelicopter.databasix.com>
Keywords: Eat Shit Die
On Mon, 14 Jan 2008 15:43:50 -0800, Jim Gibson <jimsgibson@gmail.com>
wrote:
>In article <fmgr5g$7p5$4@blackhelicopter.databasix.com>, Gary L.
>Burnore <gburnore@databasix.com> wrote:
>> ... frankly, missing spaces
>> between = symbols is most annoying.
>
>There are spaces around each '=' in every assignment statement. The
>only '=' without surrounding spaces are in print statements, which
>appear to be debug statements. I do the same thing in my code --
>snuggle up the preceding and succeeding characters in a print statement
>-- to see if there is any whitespace in the variables I am printing.
>Readability of the output is not the issue; it is done for accuracy of
>results.
Fair enough.
--
gburnore at DataBasix dot Com
---------------------------------------------------------------------------
How you look depends on where you go.
---------------------------------------------------------------------------
Gary L. Burnore | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
Official .sig, Accept no substitutes. | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ 0 1 7 2 3 / Ý³Þ 3 7 4 9 3 0 Û³
Black Helicopter Repair Services, Ltd.| Official Proof of Purchase
===========================================================================
------------------------------
Date: 15 Jan 2008 00:06:16 GMT
From: John Bokma <john@castleamber.com>
Subject: Re: USEFUL perl SCRIPT: NTP verifier
Message-Id: <Xns9A25B82AA8E3Bcastleamber@130.133.1.4>
Jim Gibson <jimsgibson@gmail.com> wrote:
> In article <fmgr5g$7p5$4@blackhelicopter.databasix.com>, Gary L.
> Burnore <gburnore@databasix.com> wrote:
>> > #print "$server delay=$roundtrip_delay,
>> > offset=$local_clock_offset, delta=$delta,
>> > duration=$duration\n"; print sprintf( "%-30s %.5f\n", $server,
>> ... frankly, missing spaces
>> between = symbols is most annoying.
>
> There are spaces around each '=' in every assignment statement. The
> only '=' without surrounding spaces are in print statements, which
> appear to be debug statements. I do the same thing in my code --
> snuggle up the preceding and succeeding characters in a print
> statement -- to see if there is any whitespace in the variables I am
> printing. Readability of the output is not the issue; it is done for
> accuracy of results.
I use either [] (mostly for debugging) or ''. Both have the added
advantage that one can see a spurious newline, e.g.
duration = [10
]
In this case, where numbers are printed, I would use extra spaces but
neither [] nor ''.
anyway, as always YMMV :-)
--
John
http://johnbokma.com/mexit/
------------------------------
Date: Mon, 14 Jan 2008 19:37:40 -0500
From: Gary L. Burnore <gburnore@databasix.com>
Subject: Re: USEFUL perl SCRIPT: NTP verifier
Message-Id: <fmgv86$g14$1@blackhelicopter.databasix.com>
Keywords: Eat Shit Die
On 15 Jan 2008 00:06:16 GMT, John Bokma <john@castleamber.com> wrote:
>Jim Gibson <jimsgibson@gmail.com> wrote:
>
>> In article <fmgr5g$7p5$4@blackhelicopter.databasix.com>, Gary L.
>> Burnore <gburnore@databasix.com> wrote:
>
>>> > #print "$server delay=$roundtrip_delay,
>>> > offset=$local_clock_offset, delta=$delta,
>>> > duration=$duration\n"; print sprintf( "%-30s %.5f\n", $server,
>
>>> ... frankly, missing spaces
>>> between = symbols is most annoying.
>>
>> There are spaces around each '=' in every assignment statement. The
>> only '=' without surrounding spaces are in print statements, which
>> appear to be debug statements. I do the same thing in my code --
>> snuggle up the preceding and succeeding characters in a print
>> statement -- to see if there is any whitespace in the variables I am
>> printing. Readability of the output is not the issue; it is done for
>> accuracy of results.
>
>I use either [] (mostly for debugging) or ''. Both have the added
>advantage that one can see a spurious newline, e.g.
>
>duration = [10
>]
Agreed. Brackets or pipes work nicely as they're "usually" not in the
code.
he's using = and ,. Guess that works.
>In this case, where numbers are printed, I would use extra spaces but
>neither [] nor ''.
>
>anyway, as always YMMV :-)
--
gburnore at DataBasix dot Com
---------------------------------------------------------------------------
How you look depends on where you go.
---------------------------------------------------------------------------
Gary L. Burnore | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
Official .sig, Accept no substitutes. | ÝÛ³ºÝ³Þ³ºÝ³³Ýۺݳ޳ºÝ³Ý³Þ³ºÝ³ÝÝÛ³
| ÝÛ 0 1 7 2 3 / Ý³Þ 3 7 4 9 3 0 Û³
Black Helicopter Repair Services, Ltd.| Official Proof of Purchase
===========================================================================
------------------------------
Date: Mon, 14 Jan 2008 19:10:54 -0600
From: Ignoramus5390 <ignoramus5390@NOSPAM.5390.invalid>
Subject: Re: USEFUL perl SCRIPT: NTP verifier
Message-Id: <09SdneSoYcmDlRHanZ2dnUVZ_rXinZ2d@giganews.com>
On 2008-01-14, Jim Gibson <jimsgibson@gmail.com> wrote:
> There are spaces around each '=' in every assignment statement. The
> only '=' without surrounding spaces are in print statements, which
> appear to be debug statements. I do the same thing in my code --
> snuggle up the preceding and succeeding characters in a print statement
> Readability of the output is not the issue; it is done for accuracy of
> results.
>
I also do it for ease of computer parsing. Name=value pairs are very
easy top parse correctly.
i
------------------------------
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 1196
***************************************