[31210] in Perl-Users-Digest
Perl-Users Digest, Issue: 2455 Volume: 11
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Tue Jun 2 21:09:49 2009
Date: Tue, 2 Jun 2009 18:09:14 -0700 (PDT)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Perl-Users Digest Tue, 2 Jun 2009 Volume: 11 Number: 2455
Today's topics:
bless doesn't seem to work. <ryan.mccoskrie@NOSPAMgmail.com>
Re: bless doesn't seem to work. <tadmc@seesig.invalid>
Re: bless doesn't seem to work. <ryan.mccoskrie@NOSPAMgmail.com>
Re: bless doesn't seem to work. <tadmc@seesig.invalid>
Re: bless doesn't seem to work. <glex_no-spam@qwest-spam-no.invalid>
Re: bless doesn't seem to work. <glex_no-spam@qwest-spam-no.invalid>
Re: bless doesn't seem to work. <ben@morrow.me.uk>
Re: How can I pass a substitution pattern on the comman sln@netherlands.com
Re: m// sln@netherlands.com
Re: Matching block of text awk-like: /---/,/---/ jl_post@hotmail.com
Re: Matching block of text awk-like: /---/,/---/ <peter@makholm.net>
Re: Matching block of text awk-like: /---/,/---/ <uri@StemSystems.com>
Re: Posting Guidelines for comp.lang.perl.misc ($Revisi <someone@somewhere.nb.ca>
Re: Sciene Module sln@netherlands.com
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: Wed, 03 Jun 2009 07:18:06 +1200
From: RyanMcCoskrie <ryan.mccoskrie@NOSPAMgmail.com>
Subject: bless doesn't seem to work.
Message-Id: <h03tsg$6nk$1@news.albasani.net>
I'm trying to piece to gether a adventure like[1] game.
This is something that I have copied almost straight from the man
page:
>package room_t;
>use exit_t;
>
>sub new()
>{
> my $self = {};
> my $class = shift;
>
> $self->{NAME} = shift;
> $self->{NUMBER}= shift;
> @{$self->{EXITS}} = [];
>
> return bless($self, $class);
>}
The trouble starts here though:
>$temp = room_t->new("Start", 0);
>push(@world, $temp);
>$world[0]->addExit("End", 1);
These three lines (in the buildWorld() subroutine) result in the error:
>Can't call method "addExit" on unblessed reference at ./game.pl line 22.
Have I done something wrong? Or is this an interpreter issue?
[1]This may turn into "Indiana Jones and the recursive macro processor"
for the sake of silliness.
------------------------------
Date: Tue, 2 Jun 2009 15:41:58 -0500
From: Tad J McClellan <tadmc@seesig.invalid>
Subject: Re: bless doesn't seem to work.
Message-Id: <slrnh2b3km.ari.tadmc@tadmc30.sbcglobal.net>
RyanMcCoskrie <ryan.mccoskrie@NOSPAMgmail.com> wrote:
> This is something that I have copied almost straight from the man
^^^^^^
^^^^^^
As is usual with programming, the devil is in the details.
[ snip code ]
>>Can't call method "addExit" on unblessed reference at ./game.pl line 22.
>
> Have I done something wrong?
Not as far as we can tell, but the "almost" is worrisome.
This short and complete example that you can run (as is suggested
in the Posting Guidelines that are posted here frequently) works
just fine.
The problem is in some of the code that we have not seen...
------------------------
#!/usr/bin/perl
use warnings;
use strict;
package room_t;
sub new()
{
my $self = {};
my $class = shift;
$self->{NAME} = shift;
$self->{NUMBER}= shift;
@{$self->{EXITS}} = [];
return bless($self, $class);
}
sub addExit { warn "addExit() got called\n" }
package main;
my @world;
my $temp = room_t->new("Start", 0);
push(@world, $temp);
$world[0]->addExit("End", 1);
------------------------
--
Tad McClellan
email: perl -le "print scalar reverse qq/moc.noitatibaher\100cmdat/"
------------------------------
Date: Wed, 03 Jun 2009 08:52:21 +1200
From: RyanMcCoskrie <ryan.mccoskrie@NOSPAMgmail.com>
Subject: Re: bless doesn't seem to work.
Message-Id: <h043dk$fcb$1@news.albasani.net>
Tad J McClellan wrote:
> RyanMcCoskrie <ryan.mccoskrie@NOSPAMgmail.com> wrote:
>> This is something that I have copied almost straight from the man page
>>
> As is usual with programming, the devil is in the details.
> [ snip code ]
>
>>>Can't call method "addExit" on unblessed reference at ./game.pl line 22.
>>
>> Have I done something wrong?
>
> Not as far as we can tell, but the "almost" is worrisome.
>
When I said almost I mean that I changed some names. I was working from
the example of the person class in the perltoot man page. The constructor
subroutine is near identical.
> This short and complete example that you can run (as is suggested
> in the Posting Guidelines that are posted here frequently) works
> just fine.
> [snip code out]
> The problem is in some of the code that we have not seen...
>
Okay then. I've tried making what I have produced closer to the example and
it failed.
All of this code is Copyright of my self (Ryan McCoskrie) 2009 and is under
the GPL (available on the Free Software Foundation website www.fsf.org).
Note that I found a description for the type of programmer that I am.
A rabid prototyper. There are other incarnations of this program with
other parts implemented and their own sets of mysterious bugs.
This is the only one in perl though.
#########################
#From the file exit_t.pm#
#########################
package exit_t;
use strict;
sub new()
{
my $self = {};
my $class = shift;
my $self->{NAME} = shift;
my $self->{NUMBER} = shift;
bless ($self, $class);
return $self;
}
1;
#########################
#From the file room_t.pm#
#########################
package room_t;
use strict;
use exit_t;
sub new()
{
my $self = {};
my $class = shift;
$self->{NAME} = shift;
$self->{NUMBER}= shift;
@{$self->{EXITS}} = [];
return bless($self, $class);
}
sub addExit()
{
my $self = shift;
push(@{$self->{EXITS}}, exit_t->new(shift, shift));
}
1;
#######################
#From the file game.pl#
#######################
#!/usr/bin/perl
use warnings;
use strict;
use room_t;
package main;
sub buildWorld();
my @world = [];
my $room = undef;
buildWorld();
my $loop = 1;
while( $loop != 0 ){
printf("> ");
my $cmd = <STDIN>;
}
sub buildWorld()
{
my $temp = room_t->new("Start", 0);
push(@world, $temp);
$world[0]->addExit("End", 1);
$temp = room_t->new("End", 1);
push(@world, $temp);
$room = \$world[0];
}
1;
------------------------------
Date: Tue, 2 Jun 2009 17:05:52 -0500
From: Tad J McClellan <tadmc@seesig.invalid>
Subject: Re: bless doesn't seem to work.
Message-Id: <slrnh2b8i0.bon.tadmc@tadmc30.sbcglobal.net>
RyanMcCoskrie <ryan.mccoskrie@NOSPAMgmail.com> wrote:
> my @world = [];
This does not do what you think it does.
After that code, @world contains one element (an anon array ref).
I think you expected @world to contain zero elements...
You want simply:
my @world;
there.
> my $temp = room_t->new("Start", 0);
> push(@world, $temp);
Now @world has 2 elements in it.
> $world[0]->addExit("End", 1);
But you access the 1st element from way up in the code.
The value from $temp is in $world[1]
--
Tad McClellan
email: perl -le "print scalar reverse qq/moc.noitatibaher\100cmdat/"
------------------------------
Date: Tue, 02 Jun 2009 16:20:41 -0500
From: "J. Gleixner" <glex_no-spam@qwest-spam-no.invalid>
Subject: Re: bless doesn't seem to work.
Message-Id: <4a2597aa$0$89871$815e3792@news.qwest.net>
RyanMcCoskrie wrote:
> Tad J McClellan wrote:
>> RyanMcCoskrie <ryan.mccoskrie@NOSPAMgmail.com> wrote:
>>> This is something that I have copied almost straight from the man page
>>>
>> As is usual with programming, the devil is in the details.
>> [ snip code ]
>>
>>>> Can't call method "addExit" on unblessed reference at ./game.pl line 22.
>>> Have I done something wrong?
>> Not as far as we can tell, but the "almost" is worrisome.
>>
> When I said almost I mean that I changed some names. I was working from
> the example of the person class in the perltoot man page. The constructor
> subroutine is near identical.
>
>> This short and complete example that you can run (as is suggested
>> in the Posting Guidelines that are posted here frequently) works
>> just fine.
>> [snip code out]
>> The problem is in some of the code that we have not seen...
>>
> Okay then. I've tried making what I have produced closer to the example and
> it failed.
So your first thought is to post the code so someone else
can fix it for you?
> All of this code is Copyright of my self (Ryan McCoskrie) 2009 and is under
> the GPL (available on the Free Software Foundation website www.fsf.org).
That made me laugh so hard my spleen fell out... I don't think you
have much to worry about.
>
>
> Note that I found a description for the type of programmer that I am.
> A rabid prototyper.
rabid : affected with rabies.
Maybe that explains why your code is so poor. You might
want to get that checked.
> There are other incarnations of this program with
> other parts implemented and their own sets of mysterious bugs.
blah.. blah..
> This is the only one in perl though.
oh.. I'm pretty sure there are more..
>
> #########################
> #From the file exit_t.pm#
> #########################
> package exit_t;
> use strict;
> sub new()
> {
> my $self = {};
> my $class = shift;
Typically, you'd order it so the parameters are set
first, then define $self.
>
> my $self->{NAME} = shift;
> my $self->{NUMBER} = shift;
Really?? Well. I guess that's 'near identical'....
>
> bless ($self, $class);
> return $self;
> }
> 1;
>
> #########################
> #From the file room_t.pm#
> #########################
> package room_t;
> use strict;
> use exit_t;
>
> sub new()
> {
> my $self = {};
> my $class = shift;
>
> $self->{NAME} = shift;
> $self->{NUMBER}= shift;
> @{$self->{EXITS}} = [];
>
> return bless($self, $class);
> }
>
> sub addExit()
> {
> my $self = shift;
> push(@{$self->{EXITS}}, exit_t->new(shift, shift));
> }
>
> 1;
>
> #######################
> #From the file game.pl#
> #######################
>
> #!/usr/bin/perl
>
> use warnings;
> use strict;
> use room_t;
>
> package main;
>
> sub buildWorld();
Why?
> my @world = [];
This is where the problem lies. Don't do that.
$world[0] is now undef.. later, when you push( @world..)
you're pushing into [1].. not [0].
my @world;
> my $room = undef;
my $room;
>
>
> buildWorld();
> my $loop = 1;
>
> while( $loop != 0 ){
> printf("> ");
perldoc -f print
> my $cmd = <STDIN>;
> }
>
>
> sub buildWorld()
> {
> my $temp = room_t->new("Start", 0);
> push(@world, $temp);
> $world[0]->addExit("End", 1);
> $temp = room_t->new("End", 1);
> push(@world, $temp);
>
> $room = \$world[0];
Why return a reference to it?
> }
>
> 1;
hu?
------------------------------
Date: Tue, 02 Jun 2009 16:22:55 -0500
From: "J. Gleixner" <glex_no-spam@qwest-spam-no.invalid>
Subject: Re: bless doesn't seem to work.
Message-Id: <4a25982f$0$89871$815e3792@news.qwest.net>
J. Gleixner wrote:
[...]
>> my @world = [];
>
> This is where the problem lies. Don't do that.
> $world[0] is now undef.. later, when you push( @world..)
correction.. an anon array ref..
------------------------------
Date: Wed, 3 Jun 2009 01:28:32 +0100
From: Ben Morrow <ben@morrow.me.uk>
Subject: Re: bless doesn't seem to work.
Message-Id: <gmsgf6-695.ln1@osiris.mauzo.dyndns.org>
Quoth ryan.mccoskrie@NOSPAMgmail.com:
> I'm trying to piece to gether a adventure like[1] game.
>
> This is something that I have copied almost straight from the man
> page:
> >package room_t;
> >use exit_t;
Don't use package names in all-lowercase. They are reserved for pragmata
(modules that affect how perl parses your program, like strict and
warnings).
You want to think at least a little bit about namespaces, as well. If
you've any sense you'll be using CPAN modules, so you want to make sure
you're not going to conflict with packages used by them. One sensible
solution is to pick a top-level namespace for you application (say,
'Adventure') and put the other packages under that (Adventure::Room,
Adventure::Exit). Of course you want to pick something less generic than
'Adventure' :).
> >
> >sub new()
The () here doesn't do what you think it does. Read about prototypes in
perldoc perlsub, or just leave them off.
> >{
> > my $self = {};
> > my $class = shift;
> >
> > $self->{NAME} = shift;
> > $self->{NUMBER}= shift;
A whole list of 'shift' statements like this is terribly ugly. You can
assign to a hash slice instead:
@{$self}{"NAME", "NUMBER"} = @_;
though I admit the deref syntax isn't exactly pretty either.
> > @{$self->{EXITS}} = [];
I don't think you mean that. This implicitly assigns a new arrayref to
$self->{EXITS}, and then assigns a second new arrayref as its first
element. It's equivalent to
$self->{EXITS} = [ [] ];
You probably meant
$self->{EXITS} = [];
or, you can just let perl take care of creating the arrayref for you as
necessary.
Ben
------------------------------
Date: Tue, 02 Jun 2009 13:32:05 -0700
From: sln@netherlands.com
Subject: Re: How can I pass a substitution pattern on the command line?
Message-Id: <f82b2552olp8paa7gtb8frv416pau2agbe@4ax.com>
On Mon, 01 Jun 2009 12:47:41 -0400, P B <newsposter625@gmail.com.invalid> wrote:
>On 2009-05-30, John W. Krahn <someone@example.com> wrote in
>comp.lang.perl.misc:
>> P B wrote:
>>> On 2009-05-29, A. Sinan Unur <1usa@llenroc.ude.invalid> wrote in
>>> comp.lang.perl.misc:
>>>> First, you don't need substitution. You need to capture matches.
>>>> Second, just pass the pattern string to the program.
>
>[snipped A. Sinan Unur's example]
>
>>> What is the 'if' statement testing? What is
>>> ( @parts = ( $arg =~ $re ) )
>>> doing? What values is @parts being populated with?
>
>> $re is the regular expression '\.(\w{1,3})$'. $arg is a file name. $re
>> is matched against $arg and everything inside capturing parentheses is
>> returned and stored in @parts. If @parts is empty then it is false and
>> the next file name is processed.
>
>>> What exactly is the q{} operator doing in the join statement? What is
>>> its content, so to speak? Is it just the same as '' here?
>
>> q{} is exactly the same as ''.
>
>>> Thanks again for your advice. I'm slowly picking up 'idiomatic perl', so
>>> I'm always eager to learn new things.
>>>
>>>
>>> On a side note, how /would/ one pass a whole s/// operator on the
>>> command line (sed-style, I guess), supposing you wanted to do
>>> interesting things with backreferences, the g and i modifiers, etc.?
>
^^^^^^^^^^
You can't pass that form via string and expect it to work on the replacement
side (ie: s/pattern/replacement/) without doing an eval on it within the script.
Also, one must be carefull of shell interactions.
Example:
windows - perl hh.pl 'arg1'. $ARGV[0] is '<quote>arg1<quote>'
windows - perl hh.pl arg1. $ARGV[0] is 'arg1'
windows - perl hh.pl "arg1". $ARGV[0] is 'arg1'
windows - perl hh.pl arg1 and more. $ARGV[0] is 'arg1'
windows - perl hh.pl "arg1 and more". $ARGV[0] is 'arg1 and more'
---
use strict;
use warnings;
my $pattern = shift @ARGV;
my $string = q/take MEME out/;
print "\"$string\" =~ $pattern\n";
eval "\$string =~ $pattern";
print $string,"\n";
__END__
c:\temp>perl aa.pl "s/(ME)\1/$1/"
"take MEME out" =~ s/(ME)\1/$1/
take ME out
c:\temp>
-sln
------------------------------
Date: Tue, 02 Jun 2009 14:29:38 -0700
From: sln@netherlands.com
Subject: Re: m//
Message-Id: <c66b25pirv3s5k449tgf4kacvj1e75r213@4ax.com>
On Tue, 2 Jun 2009 03:50:11 +0100, Ben Morrow <ben@morrow.me.uk> wrote:
>[reordered slightly for clarity]
>
>Quoth "Guy" <someone@somewhere.nb.ca>:
>> "Ben Morrow" <ben@morrow.me.uk> a écrit dans le message de news:
>> e0paf6-4p5.ln1@osiris.mauzo.dyndns.org...
>> >
>> > In general, looping over array indices is bad style in Perl. If you have
>> > a loop that looks like this
>> >
>> > for (my $j = 0; $j < @info; $j++) {
>> > if ($info[$j]{PDS} =~ $rx) {
>> > ...
>> > }
>> > }
>> >
>> > it would be better written as
>> >
>> > for (@info) {
>> > if ($_->{PDS} =~ /$rx/) {
>> > ...
>> > }
>> > }
>>
>> In your code, the for (used as a foreach) definitely looks (and reads) much
>> better than the for-loop that I had in my code. It may be a dead giveaway
>> that I used to write in Basic.
>
>Me too :). Learning good style in a ny language is an incremental
>process. It's made somewhat harder for Perl by the enormous amount of
>*really* ugly code out there.
Explain "really ugly code". Is that the 10 thousand line C++ patch of
the 300,000 line base in a two week contract?
-sln
------------------------------
Date: Tue, 2 Jun 2009 09:02:15 -0700 (PDT)
From: jl_post@hotmail.com
Subject: Re: Matching block of text awk-like: /---/,/---/
Message-Id: <6d30035f-a2d4-491a-879d-5bb3920c84b9@v2g2000vbb.googlegroups.com>
On Jun 2, 8:41 am, "A. Farber" <Alexander.Far...@gmail.com> wrote:
>
> I'd like to extract few lines of input,
> delimited by the "-----" lines, i.e.
>
> ---------------
> blah
> bleh
> blue
> ---------------
>
> Is there a nice way in Perl to do that,
> maybe awk-like /^---/,/^---/ ?
Use the "..." range operator, like this:
perl -lne "print if /^---/ ... /^---/"
This will print out the "---" lines, though. If you don't want to
print those, you can exclude them with this:
perl -lne "print if /^---/ ... /^---/ and not /^---/"
but make sure that the "not /^---/" part comes AFTER the "/^---/ ... /
^---/" part, or else short-circuit evaluation will prevent the "/
^---/ ... /^---/" part from ever being evaluated, which will result in
the one-liner not working as you intended.
I hope this helps, A. Farber.
-- Jean-Luc
------------------------------
Date: Tue, 02 Jun 2009 19:55:23 +0200
From: Peter Makholm <peter@makholm.net>
Subject: Re: Matching block of text awk-like: /---/,/---/
Message-Id: <87skiiwmes.fsf@vps1.hacking.dk>
jl_post@hotmail.com writes:
> This will print out the "---" lines, though. If you don't want to
> print those, you can exclude them with this:
>
> perl -lne "print if /^---/ ... /^---/ and not /^---/"
>
> but make sure that the "not /^---/" part comes AFTER the "/^---/ ... /
> ^---/" part,
And note that you have touse the low-precedence 'and' operator instead
of the higher precedence && operator. Otherwise it will be parsed as
part of the second portion of the range operator which will never be
true.
//Makholm
------------------------------
Date: Tue, 02 Jun 2009 15:10:13 -0400
From: "Uri Guttman" <uri@StemSystems.com>
Subject: Re: Matching block of text awk-like: /---/,/---/
Message-Id: <87my8q1mga.fsf@quad.sysarch.com>
>>>>> "jp" == jl post <jl_post@hotmail.com> writes:
jp> On Jun 2, 8:41 am, "A. Farber" <Alexander.Far...@gmail.com> wrote:
jp> Use the "..." range operator, like this:
you don't need the ... as .. will do fine. he can't match the left and
right sides of .. on the same line as he has two different lines for
delimiting.
jp> perl -lne "print if /^---/ ... /^---/ and not /^---/"
and if that is all he really needs, then he can just skip all --- lines
with a simpler unix grep:
foo | grep -v '----'
OP: is there stuff to ignore between line groups delimited by ---? do
you need to do anything other than print them (as in process them with
more code)?
uri
--
Uri Guttman ------ uri@stemsystems.com -------- http://www.sysarch.com --
----- Perl Code Review , Architecture, Development, Training, Support ------
--------- Free Perl Training --- http://perlhunter.com/college.html ---------
--------- Gourmet Hot Cocoa Mix ---- http://bestfriendscocoa.com ---------
------------------------------
Date: Tue, 2 Jun 2009 17:57:49 -0300
From: "Guy" <someone@somewhere.nb.ca>
Subject: Re: Posting Guidelines for comp.lang.perl.misc ($Revision: 1.9 $)
Message-Id: <4a259248$0$23771$9a566e8b@news.aliant.net>
"Uri Guttman" <uri@StemSystems.com> a écrit dans le message de news:
87zlcr5qus.fsf@quad.sysarch.com...
>>>>>> "G" == Guy <someone@somewhere.nb.ca> writes:
>
> G> Sorry, I know now I've been abusing, thanks for the info.
>
> part of the abuse is top posting and not editing quoted emails. did you
> have to leave the ENTIRE guideline in your post? we see it regularly so
> we don't need to see extraneous copies in posts. learn how to bottom
> post and edit out all extra quoted stuff.
>
> look at it this way. you posted 1 line. you quoted almost 400
> lines. think about the signal to noise ratio there.
Sorry again. I was happy to see the guidelines but hadn't read them yet.
I've since printed and read them. I'll read them again a few times, try to
memorize at least the important stuff, and keep them handy.
Guy
------------------------------
Date: Tue, 02 Jun 2009 14:12:09 -0700
From: sln@netherlands.com
Subject: Re: Sciene Module
Message-Id: <vb4b25pd08a65j1lm7snijn8bo71g713fp@4ax.com>
On Mon, 1 Jun 2009 20:26:38 -0500, "E.D.G." <edgrsprj@ix.netcom.com> wrote:
>Just for general interest,
>
>One of the projects that I am working on involves making recommendations to
>science researchers regarding a good programming language for relatively
>simple projects. That could be especially important for science students
>around the world who do not have unlimited amounts of time to learn a
>complex computer language or hundreds of dollars to purchase one.
>
>Another researcher and I evaluated a number of programming languages
>including Fortran and Basic programs. And when the evaluation process was
>finished I made the decision that the ActiveState version of Perl was
>probably our best choice. Quite a few evaluation criteria were involved.
>
>So far, we have not looked into Perl's graphics capabilities. But I know
>that it can be used quite effectively with the Gnuplot graphics program.
>And both will apparently run on different types of computers with various
>operating systems.
>
>The main problem that the people that I am working with have had with Perl
>is with the documentation. In my opinion it assumes that you have a certain
>level of programming experience to start with. Just determining how to
>download the program and start using the ppm feature to load various modules
>is difficult if there is no one around to explain what steps need to be
>taken.
That is your responsibility. You wrote your app with all the bells and whistles
with intent to have it used by people who never did Perl.
Write an msi script and install the whole shebang for them.
> I don't know if the latest Perl download lets people create exe
>versions of the program. But I do know that it took me about two years of
>trying different things before I was finally able to determine what modules
>had to be linked with the program and what type of commands to give the
>computer in order to create them. Once you know how to do all of that they
>are easy to create.
>
>It is my opinion that if you can get past those types of problems, Perl is a
>powerful, versatile, and easy programming language to work with. And future
>efforts might involve attempting to get a "science" module developed that
>would contain all of the features that science researchers need such as trig
>functions, automatic pipe creation routines, graphics, exe program
>generation code, and most important of all, more easily understood
>documentation. Science researchers generally need to use only a limited
>number of commands. And if they are explained in simple terms then with
>very little effort people can start creating programs.
There is no intersection between these worlds other than specialist's.
You may have to send out paid programmers with your software.
>
>I would imagine that the ActiveState people would like to sell more of their
>specialty software such as the program development kits. And if more
>science researchers and others are using Perl then I would expect that they
>should be able to do that.
Perl is not for the faint hearted. More and more are NOT gravitatiting to it!
The more you learn about Perl, the less friendly it actually becomes.
The scientific analogy is that the Perl modules are the stars, galaxies and
planets. Knowing what to do with it is Dark Matter/Energy.
-sln
------------------------------
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 2455
***************************************