[27943] in Perl-Users-Digest
Perl-Users Digest, Issue: 9307 Volume: 10
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Fri Jun 16 14:05:36 2006
Date: Fri, 16 Jun 2006 11:05:05 -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 Fri, 16 Jun 2006 Volume: 10 Number: 9307
Today's topics:
Re: automate command line script using perl <shahrahulb@gmail.com>
Re: Binding array to pattern (Seymour J.)
Re: Binding array to pattern (Seymour J.)
Re: can I trust on key %hash natural order? <john@castleamber.com>
Re: Flat file missing <jurgenex@hotmail.com>
Re: Flat file missing <glex_no-spam@qwest-spam-no.invalid>
Re: Perl Web Developer Wanted! <uri@stemsystems.com>
Re: Perl Web Developer Wanted! <dha@panix.com>
Re: reference to object method <uri@stemsystems.com>
Re: reference to object method <john@castleamber.com>
Search by keyword feature <ignoramus15879@NOSPAM.15879.invalid>
Re: Search by keyword feature <sherm@Sherm-Pendleys-Computer.local>
Re: Search by keyword feature <ignoramus15879@NOSPAM.15879.invalid>
Re: What is Expressiveness in a Computer Language <yumagene@gmail.com>
Re: What is Expressiveness in a Computer Language <raffaelcavallaro@pas-d'espam-s'il-vous-plait-mac.com>
Re: What is Expressiveness in a Computer Language <raffaelcavallaro@pas-d'espam-s'il-vous-plait-mac.com>
Re: What is Expressiveness in a Computer Language <dnew@san.rr.com>
Re: What is Expressiveness in a Computer Language <dnew@san.rr.com>
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: 16 Jun 2006 08:38:27 -0700
From: "perlperl" <shahrahulb@gmail.com>
Subject: Re: automate command line script using perl
Message-Id: <1150472307.053507.245930@y41g2000cwy.googlegroups.com>
i installed expect-5.43 and tcl8.5a4 and saved both in C:
if i try to run autoexpect, i get autoexpect is not recognized internal
or external command
------------------------------
Date: Fri, 16 Jun 2006 10:54:16 -0300
From: "Shmuel (Seymour J.) Metz" <spamtrap@library.lspace.org.invalid>
Subject: Re: Binding array to pattern
Message-Id: <4492c618$1$fuzhry+tra$mr2ice@news.patriot.net>
In <x77j3izamr.fsf@mail.sysarch.com>, on 06/15/2006
at 11:44 AM, Uri Guttman <uri@stemsystems.com> said:
>it has to be a reference as you created a ref there earlier when you
>built the structure. all scalar values in a structure that hold lower
>level structures are refs.
Thanks.
>that is wrong.
Whoops! I edited the text from the article instead of doing a
cut-and-paste directly from my code. Make that
my $email_contact = $email_info->{$_} ;
push @Contacts, @{$email_contact};
my $scalarContacts="@{$email_contact}";
push @abuseContacts, @{$email_contact}
if (/abuse/ or $scalarContacts =~ /abuse/);
>but based on wrong logic.
Please see above.
>i still don't know your goals here.
My goal is to construct one of two messages; one containg only the
abuse matches and the other containing all of the array element,
depending on whether there are any abuse matches. I was trying to
quote only the minimum code needed to provide context, not all 620
lines.
>that is very unclear to me.
I'm extracting e-mail contacts from whois data. In some cases there
are multiple contacts for the same role. The abuse contacts might have
the word "abuse" in the addresses or might have it only in the tags.
If there are abuse contacts then I want to put them in a message;
otherwise want to put all of the e-mail in a different message. That's
part of a larger program that deobfuscates a spa e-mail and attempts
to locate information on the sender and the drop boxes for use in a
complaint.
>that makes no sense as there is no order in hashes so first can't
>exist. you want any() from quantum::superpositions or one of the
>perl6 modules.
When will Perl6 be ready for prime time?
--
Shmuel (Seymour J.) Metz, SysProg and JOAT <http://patriot.net/~shmuel>
Unsolicited bulk E-mail subject to legal action. I reserve the
right to publicly post or ridicule any abusive E-mail. Reply to
domain Patriot dot net user shmuel+news to contact me. Do not
reply to spamtrap@library.lspace.org
------------------------------
Date: Fri, 16 Jun 2006 13:15:02 -0300
From: "Shmuel (Seymour J.) Metz" <spamtrap@library.lspace.org.invalid>
Subject: Re: Binding array to pattern
Message-Id: <4492e716$2$fuzhry+tra$mr2ice@news.patriot.net>
In <slrne937sq.3uc.tadmc@magna.augustmail.com>, on 06/15/2006
at 12:57 PM, Tad McClellan <tadmc@augustmail.com> said:
>You flipped the lines from what you posted before,
I edited the text of the article instead of clipping from my code, and
inadvertently left some out. That should be
my $email_contact = $email_info->{$_} ;
push @Contacts, @{$email_contact};
my $scalarContacts="@{$email_contact}";
push @abuseContacts, @{$email_contact}
if (/abuse/ or $scalarContacts =~ /abuse/);
> if grep /abuse/, $_, @$emails;
How is that better than scanning the derived scalar? Although it might
be better to do
my $scalarContacts="$_ @$email_contact";
push @abuseContacts, @$email_contact
if $scalarContacts =~ /abuse/;
--
Shmuel (Seymour J.) Metz, SysProg and JOAT <http://patriot.net/~shmuel>
Unsolicited bulk E-mail subject to legal action. I reserve the
right to publicly post or ridicule any abusive E-mail. Reply to
domain Patriot dot net user shmuel+news to contact me. Do not
reply to spamtrap@library.lspace.org
------------------------------
Date: 16 Jun 2006 18:01:43 GMT
From: John Bokma <john@castleamber.com>
Subject: Re: can I trust on key %hash natural order?
Message-Id: <Xns97E48487D58E6castleamber@130.133.1.4>
"filippo" <filippo2991@virgilio.it> wrote:
> John Bokma ha scritto:
>
>> A common mistake I see very often is to extract a lot of data from a
>> database, and have the program do a lot of manipulation that could be
>> done by the database itself, and probably much more efficient.
>
> this is interesting. Actually this was my deliberate coose from the
> possible two:
>
> a)
> - query all data from database
> - cycle on this data
>
> b) query database into the cycle
>
> I choosed A because I though it was best to minimize the database load
> and query overhead.
I was thinking about c)
Let de database create the data you want
get this data
--
John Bokma Freelance software developer
&
Experienced Perl programmer: http://castleamber.com/
------------------------------
Date: Fri, 16 Jun 2006 15:16:04 GMT
From: "Jürgen Exner" <jurgenex@hotmail.com>
Subject: Re: Flat file missing
Message-Id: <UWzkg.3603$YI2.1581@trnddc01>
asg wrote:
> i use the code below for a page counter.
See "perldoc -q increment"
jue
------------------------------
Date: Fri, 16 Jun 2006 10:11:57 -0500
From: "J. Gleixner" <glex_no-spam@qwest-spam-no.invalid>
Subject: Re: Flat file missing
Message-Id: <NXzkg.11$xn4.9735@news.uswest.net>
asg wrote:
> i use the code below for a page counter. when it gets to around a 900
> count, it resets to 1. any ideas as to why?
page counter... A cold chill goes through the newsgroup...
Two quick reasons:
The file didn't exist.
The open failed, therefore ergsege is undefined/0.
There's no way to tell because you aren't checking if
the various functions were successful or not.
> my $counterFile = "adcounter/page1";
>
> if (-e $counterFile) {
> open(COUNT,"$counterFile");
> flock (COUNT, 2);
> my $ergsege= <COUNT>;
> close(COUNT);
> $ergsege++;
> open(COUNT,">$counterFile");
> print (COUNT "$ergsege");
print COUNT $ergsege;
> close(COUNT);
> flock (COUNT, 8);
> }
> else{
> my $ergsege= "1";
> open(COUNT,">$counterFile");
> flock (COUNT, 2);
> print COUNT "1";
> close(COUNT);
> flock (COUNT, 8);
> }
This is a pretty poor way to do what you want, for
a much better approach, see:
perldoc -q "I still don't get locking."
------------------------------
Date: Fri, 16 Jun 2006 11:13:26 -0400
From: Uri Guttman <uri@stemsystems.com>
Subject: Re: Perl Web Developer Wanted!
Message-Id: <x7psh9uoa1.fsf@mail.sysarch.com>
>>>>> "TM" == Tad McClellan <tadmc@augustmail.com> writes:
TM> Mirco Wahab <peace.is.our.profession@gmx.de> wrote:
>> Thus spoke Randal L. Schwartz (on 2006-06-16 04:49):
>>
>>> ... Do you want to work for an idiot? ...
>>
>> Isn't this what almost all people do almost every day ;-)
TM> _I_ do not work for an idiot. [1]
in russia, the idiot works for you! :)
TM> [1] Shameless kissing up, since my boss reads this newsgroup. :-) :-)
be careful of who you kiss! :)
uri
--
Uri Guttman ------ uri@stemsystems.com -------- http://www.stemsystems.com
--Perl Consulting, Stem Development, Systems Architecture, Design and Coding-
Search or Offer Perl Jobs ---------------------------- http://jobs.perl.org
------------------------------
Date: Fri, 16 Jun 2006 15:53:57 +0000 (UTC)
From: "David H. Adler" <dha@panix.com>
Subject: Re: Perl Web Developer Wanted!
Message-Id: <slrne95l0m.5r5.dha@panix2.panix.com>
On 2006-06-15, someone wrote:
> Are you looking to join a dynamic, innovative Interactive Marketing &
> Technology Company?
You have posted a job posting or a resume in a technical group.
Longstanding Usenet tradition dictates that such postings go into
groups with names that contain "jobs", like "misc.jobs.offered", not
technical discussion groups like the ones to which you posted.
Had you read and understood the Usenet user manual posted frequently to
"news.announce.newusers", you might have already known this. :) (If
n.a.n is quieter than it should be, the relevent FAQs are available at
http://www.faqs.org/faqs/by-newsgroup/news/news.announce.newusers.html)
Another good source of information on how Usenet functions is
news.newusers.questions (information from which is also available at
http://www.geocities.com/nnqweb/).
Please do not explain your posting by saying "but I saw other job
postings here". Just because one person jumps off a bridge, doesn't
mean everyone does. Those postings are also in error, and I've
probably already notified them as well.
If you have questions about this policy, take it up with the news
administrators in the newsgroup news.admin.misc.
http://jobs.perl.org may be of more use to you
Yours for a better usenet,
dha
--
David H. Adler - <dha@panix.com> - http://www.panix.com/~dha/
He was from the planet Blobnar.
- Jon Orwant
------------------------------
Date: Fri, 16 Jun 2006 11:11:42 -0400
From: Uri Guttman <uri@stemsystems.com>
Subject: Re: reference to object method
Message-Id: <x7u06luocx.fsf@mail.sysarch.com>
>>>>> "BM" == Ben Morrow <benmorrow@tiscali.co.uk> writes:
BM> Quoth Ch Lamprecht <christoph.lamprecht.no.spam@web.de>:
>> Uri Guttman wrote:
>> >>>>>>"CL" == Ch Lamprecht <christoph.lamprecht.no.spam@web.de> writes:
>> >
>> >
>> > CL> Uri Guttman wrote:
>> > >>>>>>> "x" == xhoster <xhoster@gmail.com> writes:
>> > x> Uri Guttman <uri@stemsystems.com> wrote:
>> >
>> > >> >> much better to use UNIVERSAL::can:
>> >
>> > >> >> my $meth = $obj->can( 'method_name' ) ;
>> > >> >> >> $meth->( $arg ) ;
>> > x> Doesn't that call the method as a regular subroutine, with $arg
>> > >> where $self
>> > x> should be?
>> > x> Wouldn't that need to be: ?
>> > x> $obj->$meth($arg);
>> > >> my bad. brain wasn't fully engaged. and i have used can like that a
>> > >> few
>> > >> times so i should know how to call the method! your code is correct
>> > >> there.
>> >
>> > CL> It will still call the method as a regular subroutine...
>> > CL> So maybe it should be better written as
>> >
>> > CL> $meth->( $obj,$arg );
>> >
>> > no, xhoster's fix of my bug is correct. your way skips inheritance.
>> >
>> > $obj->$meth($arg);
>> >
>> so does his:
BM> Err, yes... presumably that's the point of taking a ref to a method?
yeah, the OP's original issue is long lost in my skull. and i bet he
isn't reading this thread anymore!
BM> Xho's fix is correct, your way is ugly :).
and your mother is fixed and also ugly too! :)
uri
--
Uri Guttman ------ uri@stemsystems.com -------- http://www.stemsystems.com
--Perl Consulting, Stem Development, Systems Architecture, Design and Coding-
Search or Offer Perl Jobs ---------------------------- http://jobs.perl.org
------------------------------
Date: 16 Jun 2006 17:59:58 GMT
From: John Bokma <john@castleamber.com>
Subject: Re: reference to object method
Message-Id: <Xns97E4843C285E7castleamber@130.133.1.4>
Uri Guttman <uri@stemsystems.com> wrote:
> and your mother is fixed and also ugly too! :)
Ah, is it time for the "Your mother ..." jokes?
--
John Bokma Freelance software developer
&
Experienced Perl programmer: http://castleamber.com/
------------------------------
Date: Fri, 16 Jun 2006 17:16:04 GMT
From: Ignoramus15879 <ignoramus15879@NOSPAM.15879.invalid>
Subject: Search by keyword feature
Message-Id: <oHBkg.24790$Oj4.1581@fe39.usenetserver.com>
Are there any perl modules, preferably for MySQL, that simplify
creating a feature such as "search a database table by keyword".
I am generally aware of how to do it (made a website that did it a
long time ago), with self joins, but perhaps there is something
better/faster out there.
I would like something that works with mod_perl.
i
------------------------------
Date: Fri, 16 Jun 2006 13:25:11 -0400
From: Sherm Pendley <sherm@Sherm-Pendleys-Computer.local>
Subject: Re: Search by keyword feature
Message-Id: <m2y7vxggi0.fsf@Sherm-Pendleys-Computer.local>
Ignoramus15879 <ignoramus15879@NOSPAM.15879.invalid> writes:
> Are there any perl modules, preferably for MySQL, that simplify
> creating a feature such as "search a database table by keyword".
Have you tried using the full-text search that's built-in to MySQL?
<http://dev.mysql.com/doc/refman/5.1/en/fulltext-search.html>
sherm--
--
Cocoa programming in Perl: http://camelbones.sourceforge.net
Hire me! My resume: http://www.dot-app.org
------------------------------
Date: Fri, 16 Jun 2006 17:36:22 GMT
From: Ignoramus15879 <ignoramus15879@NOSPAM.15879.invalid>
Subject: Re: Search by keyword feature
Message-Id: <q_Bkg.24791$Oj4.6804@fe39.usenetserver.com>
On Fri, 16 Jun 2006 13:25:11 -0400, Sherm Pendley <sherm@Sherm-Pendleys-Computer.local> wrote:
> Ignoramus15879 <ignoramus15879@NOSPAM.15879.invalid> writes:
>
>> Are there any perl modules, preferably for MySQL, that simplify
>> creating a feature such as "search a database table by keyword".
>
> Have you tried using the full-text search that's built-in to MySQL?
>
> <http://dev.mysql.com/doc/refman/5.1/en/fulltext-search.html>
I have not, but it seems to be the perfect solution. Thank you!
i
------------------------------
Date: 16 Jun 2006 08:13:42 -0700
From: "genea" <yumagene@gmail.com>
Subject: Re: What is Expressiveness in a Computer Language
Message-Id: <1150470822.647000.323290@i40g2000cwc.googlegroups.com>
Torben =C6gidius Mogensen wrote:
> There are several aspects relevant to this issue, some of which are:
> - Compactness: How much do I have to type to do what I want?
=2E.....
> - Naturality: How much effort does it take to convert the concepts of
> my problem into the concepts of the language?
> - Feedback: Will the language provide sensible feedback when I write
> nonsensical things?
> - Reuse: How much effort does it take to reuse/change code to solve a
> similar problem?
.=2E...
I am fairly new to Haskell, but the compactness of the language and the
way you can express a lot in a very small amount of real estate is very
important.. I used to program back in the 80's in forth a lot.... okay
I'm a dinosaur!, but "good" definitions were usually very short, and
sweet. Unicon/Icon that I used {still do!} in the imperative world,
very compact. I will give an example that covers compact, reusable,
and because of static typing when will give back mis-type info when you
load a new "a or xs" into it to form a new function.
-- what is happening below is a is being replaced with the curried
lambda: ((++) 3) and
-- xs a list: [1..6], so when that definition of f is used it is type
checked to see if the
-- elements in xs match the type of a, so if this were going to be
compiled, it would
-- checked and guaranteed to work.
Prelude> :t f
f :: forall a b. (Show b) =3D> (a -> b) -> [a] -> IO ()
Prelude> let f a xs =3D putStr $ foldr (++) "\n" $ map (((++) "\n").
show . a ) xs
Prelude> f ((*) 3) [1..6]
3
6
9
12
15
18
Prelude>
another substitution of parameters.. using the same definition of f
allowed by the the
polymorphic parameters allowed in Haskell add to the versatility and
reusability angle:
Prelude> f sqrt [0.5,1.0..4]
0=2E7071067811865476
1=2E0
1=2E224744871391589
1=2E4142135623730951
1=2E5811388300841898
1=2E7320508075688772
1=2E8708286933869707
2=2E0
Same function 'f" now used with a different type..
[0.5,1.0..4] :: forall a. (Fractional a, Enum a) =3D> [a]
I don't know, but this just makes programming fun, for me anyway, and
if it is fun, it is expressive.. I've heard this statement made about
Ruby and Unicon, to name a few... some would say Python.. but it really
applies to the functional languages too, with all their strict typing,
with the type inference mechanisms, it isn't usually that big a deal..
If you just get into it, and can learn to take some constructive
criticism from your compiler, well hey, it is a really patient
teacher... you might get frustrated at times.. but the compiler will
happily remind you of the same type mis-matches, until you get a handle
on some concept and never once complain...
Happy Programming to all!
-- gene
------------------------------
Date: Fri, 16 Jun 2006 11:49:23 -0400
From: Raffael Cavallaro <raffaelcavallaro@pas-d'espam-s'il-vous-plait-mac.com>
Subject: Re: What is Expressiveness in a Computer Language
Message-Id: <2006061611492350073-raffaelcavallaro@pasdespamsilvousplaitmaccom>
On 2006-06-16 05:22:08 -0400, Joachim Durchholz <jo@durchholz.org> said:
> And this is a typical dynamic type advocate's response when told that
> static typing has different needs:
>
> "*I* don't see the usefulness of static typing so *you* shouldn't want
> it, either."
But I haven't made this sort of argument. I never said you shouldn't
use static typing if you want to. There are indeed types of software
where one wants the guarantees provided by static type checks. For
example, software that controls irreplaceable or very expensive
equipment such as space craft, or software that can kill people if it
fails such as software for aircraft or medical devices. The problem for
static typing advocates is that most software is not of this type.
There is a very large class of software where user inputs are
unpredictable and/or where input data comes from an untrusted source.
In these cases run-time checks are going to be needed anyway so the
advantages of static type checking are greatly reduced - you end up
doing run-time checks anyway, precisely the thing you were trying to
avoid by doing static analysis. In software like this it isn't worth
satisfying a static type checker because you don't get much of the
benefit anyway and it means forgoing such advantages of dynamic typing
as being able to run and test portions of a program before other parts
are written (forward references to as yet nonexistent functions).
Ideally one wants a language with switchable typing - static where
possible and necessary, dynamic elsewhere. To a certain extent this is
what common lisp does but it requires programmer declarations. Some
implementations try to move beyond this by doing type inference and
alerting the programmer to potential static guarantees that the
programmer could make that would allow the compiler to do a better job.
In effect the argument comes down to which kind of typing one thinks
should be the default. Dynamic typing advocates think that static
typing is the wrong default. The notion that static typing can prove
program correctness is flawed - it can only prove that type constraints
are not violated but not necessarily that program logic is correct. It
seems to me that if we set aside that class of software where safety is
paramount - mostly embedded software such as aircraft and medical
devices - we are left mostly with efficiency concerns. The 80-20 rule
suggests that most code doesn't really need the efficiency provided by
static guarantees. So static typing should be invoked for that small
portion of a program where efficiency is really needed and that dynamic
typing should be the default elswhere. This is how common lisp works -
dynamic typing by default with static guarantees available where one
needs them.
------------------------------
Date: Fri, 16 Jun 2006 12:09:54 -0400
From: Raffael Cavallaro <raffaelcavallaro@pas-d'espam-s'il-vous-plait-mac.com>
Subject: Re: What is Expressiveness in a Computer Language
Message-Id: <2006061612095416807-raffaelcavallaro@pasdespamsilvousplaitmaccom>
On 2006-06-16 05:22:08 -0400, Joachim Durchholz <jo@durchholz.org> said:
> And this is a typical dynamic type advocate's response when told that
static typing has different needs:
> "*I* don't see the usefulness of static typing so *you* shouldn't
want it, either."
But I haven't made this sort of argument. I never said you shouldn't
use static typing if you want to. There are indeed types of software
where one wants the guarantees provided by static type checks. For
example, software that controls irreplaceable or very expensive
equipment such as space craft, or software that can kill people if it
fails such as software for aircraft or medical devices. The problem for
static typing advocates is that most software is not of this type.
There is a very large class of software where user inputs are
unpredictable and/or where input data comes from an untrusted source.
In these cases run-time checks are going to be needed anyway so the
advantages of static type checking are greatly reduced - you end up
doing run-time checks anyway, precisely the thing you were trying to
avoid by doing static analysis. In software like this it isn't worth
satisfying a static type checker because you don't get much of the
benefit anyway and it means forgoing such advantages of dynamic typing
as being able to run and test portions of a program before other parts
are written (forward references to as yet nonexistent functions).
Ideally one wants a language with switchable typing - static where
possible and necessary, dynamic elsewhere. To a certain extent this is
what common lisp does but it requires programmer declarations. Some
implementations try to move beyond this by doing type inference and
alerting the programmer to potential static guarantees that the
programmer could make that would allow the compiler to do a better job.
In effect the argument comes down to which kind of typing one thinks
should be the default. Dynamic typing advocates think that static
typing is the wrong default. The notion that static typing can prove
program correctness is flawed - it can only prove that type constraints
are not violated but not necessarily that program logic is correct. It
seems to me that if we set aside that class of software where safety is
paramount - mostly embedded software such as aircraft and medical
devices - we are left mostly with efficiency concerns. The 80-20 rule
suggests that most code doesn't really need the efficiency provided by
static guarantees. So static typing should be invoked for that small
portion of a program where efficiency is really needed and that dynamic
typing should be the default elswhere. This is how common lisp works -
dynamic typing by default with static guarantees available where one
needs them.
------------------------------
Date: Fri, 16 Jun 2006 16:45:46 GMT
From: Darren New <dnew@san.rr.com>
Subject: Re: What is Expressiveness in a Computer Language
Message-Id: <_eBkg.14895$uy3.4988@tornado.socal.rr.com>
Joachim Durchholz wrote:
> Give a heterogenous list that would to too awkward to live in a
> statically-typed language.
Write a function that takes an arbitrary set of arguments and stores
them into a structure allocated on the heap.
> Give a case of calling nonexistent functions that's useful.
See the Tcl "unknown" proc, used for interactive command expansion,
dynamic loading of code on demand, etc.
--
Darren New / San Diego, CA, USA (PST)
My Bath Fu is strong, as I have
studied under the Showerin' Monks.
------------------------------
Date: Fri, 16 Jun 2006 16:59:41 GMT
From: Darren New <dnew@san.rr.com>
Subject: Re: What is Expressiveness in a Computer Language
Message-Id: <1sBkg.14897$uy3.4884@tornado.socal.rr.com>
Joachim Durchholz wrote:
> Give a heterogenous list that would to too awkward to live in a
> statically-typed language.
Printf()?
--
Darren New / San Diego, CA, USA (PST)
My Bath Fu is strong, as I have
studied under the Showerin' Monks.
------------------------------
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 V10 Issue 9307
***************************************