[6987] in Perl-Users-Digest

home help back first fref pref prev next nref lref last post

Perl-Users Digest, Issue: 612 Volume: 8

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Sun Jun 15 13:07:19 1997

Date: Sun, 15 Jun 97 10:00:22 -0700
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)

Perl-Users Digest           Sun, 15 Jun 1997     Volume: 8 Number: 612

Today's topics:
     1st Annual Obfuscated Perl Contest (Jon Orwant)
     Re: [C] Module in local directory using unshift vs use  <rootbeer@teleport.com>
     CLib module for dynamic linking on the fly (John Tobey)
     Re: Editor for Perl on Unix box (Niklas Paulsson)
     Re: File Permissions - 'nobody' can't open file (Nathan V. Patwardhan)
     Re: horrible idea <merlyn@stonehenge.com>
     illegal seek in &chat'open_port wisank@www.pds.co.th
     Look for a good IDE for win32 <joshua@midwest.net>
     Mail::Send doesnt work? (Lap Yip...)
     Re: Mail::Send doesnt work? (Nathan V. Patwardhan)
     need help with "strict" <rjberman@mindspring.com>
     Re: no cache (Nathan V. Patwardhan)
     Re: Parsing Comma Delemited Text DataBase (Chris Williams)
     Re: Perl to awk translator (Tung-chiang Yang)
     Re: Perl5 on NT / Solaris, difference ? <billc@tibinc.com>
     Re: Problems with Win32::ODBC ?! <billc@tibinc.com>
     Re: RegExp Question (something stupid, I'm sure :) <rootbeer@teleport.com>
     Re: unwanted \n's in file with wrapped lines <rootbeer@teleport.com>
     Re: URL worthy strings in Perl (Abigail)
     Using PERL to interact with the Informix Online Workgro <pasde@videotron.ca>
     Digest Administrivia (Last modified: 8 Mar 97) (Perl-Users-Digest Admin)

----------------------------------------------------------------------

Date: 15 Jun 1997 16:08:15 GMT
From: orwant@fahrenheit-451.media.mit.edu (Jon Orwant)
Subject: 1st Annual Obfuscated Perl Contest
Message-Id: <5o141f$3cg$1@nadine.teleport.com>


Details for the 1st Annual Obfuscated Perl Contest (successor to last
year's 0th Annual Obfuscated Perl Contest) are available in issue #6
of TPJ (to be mailed next week, and in bookstores July 1) and online
right now at

http://tpj.com/tpj/obfusc-1	

o	The contest now has cash prizes in addition to the trophies.  
o	Entries are due July 25, 1997.  
o	You can find all of the winning 1996 entries online at 
	http://tpj.com/tpj/contest.

-Jon

----------------
Jon Orwant
The Perl Journal
http://tpj.com/




------------------------------

Date: Sat, 14 Jun 1997 08:00:49 -0700
From: Tom Phoenix <rootbeer@teleport.com>
To: Brian Lavender <brian@brie.com>
Subject: Re: [C] Module in local directory using unshift vs use module "/path/to/module"
Message-Id: <Pine.GSO.3.96.970614075843.4940N-100000@kelly.teleport.com>

On Fri, 13 Jun 1997, Brian Lavender wrote:

> I noticed that using two following routines give two different
> results.
> 
> use CGI "/usr/dom/xbrie/brian/perl/lib/perl5/site_perl";

Could you mean 'use lib'?

> BEGIN {
> unshift(@INC,'/usr/dom/xbrie/brian/perl/lib/perl5/site_perl');
>       }

Those are supposed to be different, and 'use lib' is generally the better. 
Hope this helps!

-- Tom Phoenix        http://www.teleport.com/~rootbeer/
rootbeer@teleport.com   PGP  Skribu al mi per Esperanto!
Randal Schwartz Case:  http://www.rahul.net/jeffrey/ovs/



------------------------------

Date: 14 Jun 1997 20:05:25 +0000
From: jtobey@user1.channel1.com (John Tobey)
Subject: CLib module for dynamic linking on the fly
Message-Id: <m320652bne.fsf@localhost.user1.channel1.com>

Howdy,

I've written a perl-to-C runtime interface that works on (at least)
i586-linux.  Perl code can load and execute functions in shared
libraries.  I don't know if this has been done before, or with what
success.  This module's test script calls sprintf, fopen, and fread.

I'd be pleased to hear if anyone gets it to work on other systems.
Examples follow.

-John

This code loads and calls the math library function "sinh":

use CLib;
$libm = new CLib("-lm");
$sinh = $libm->declare_sub("sinh", "double", "d");
print "The hyperbolic sine of 3 is ", $sinh->(3), "\n";
The hyperbolic sine of 3 is 10.0178749274099

The following example uses the C library's "strncmp" to
compare the first n characters of two strings:

use CLib;
$libc = new CLib("-lc");
$strncmp = $libc->declare_sub("strncmp", "int", "p", "p", "i");
$string1 = "foobar";
$string2 = "foolish";
$result = $strncmp->($string1, $string2, 3);  # $result is 0
$result = $strncmp->($string1, $string2, 4);  # $result is -1


begin 644 CLib-0.02.tar.gz
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
%]P!X````
`
end


------------------------------

Date: 14 Jun 1997 21:03:07 +0200
From: niklas@test2.adb.gu.se (Niklas Paulsson)
Subject: Re: Editor for Perl on Unix box
Message-Id: <5nuptb$1ha@test2.adb.gu.se>

In article <csrae51ba2.fsf@Starbase.NeoSoft.COM>,
>
>vi and emacs seem to work well for most of the people using perl.
>

You must mean vi xor emacs ;)

I prefer (x)emacs when programin perl. Some really nifty features when
it comes to highligthing and using diffrent colors on reserverd words
and so on. 

-- 
Niklas Paulsson
System Administrator at Dept. of Informatics, Gvteborgs University
niklas@adb.gu.se


------------------------------

Date: 14 Jun 1997 22:59:50 GMT
From: nvp@shore.net (Nathan V. Patwardhan)
Subject: Re: File Permissions - 'nobody' can't open file
Message-Id: <5nv7p6$jt8@fridge-nf0.shore.net>

Mission Hills Association (mha@dunraven.com) wrote:

: I think the problem must be that 'nobody' doesn't have permission
: to create a file in the cgi-bin directory, or in my own (I've tried
: both.)

You're probably right.  Why isn't your program checking errors?  If it
were, you probably would have seen what was happening.

: Can someone let me know a good workaround?  

Yes.  Change the directory permissions and try again, or try writing
to an area where nobody has r/w permissions, like /tmp which will
confirm your suspicions.

--
Nathan V. Patwardhan
nvp@shore.net



------------------------------

Date: 14 Jun 1997 10:15:32 -0700
From: Randal Schwartz <merlyn@stonehenge.com>
To: Rubbish <alex.t.silverstein@bender.com>
Subject: Re: horrible idea
Message-Id: <8cvi3ht8ay.fsf@gadget.cscaper.com>

>>>>> "Rubbish" == Rubbish  <alex.t.silverstein@bender.com> writes:

Rubbish> I want to quantify the exact number of
Rubbish> times a substitution is performed;

Like, only change "fred" to "barney" the first 10 times?  This'll do
that:

	$count = 0;
	s{(fred)}{
		if (++$count <= 10) ? "barney" : $1
	}ge;

print "Just another Perl hacker," # but not what the media calls "hacker!" :-)
## legal fund: $20,495.69 collected, $182,159.85 spent; just 443 more days
## before I go to *prison* for 90 days; email fund@stonehenge.com for details

-- 
Name: Randal L. Schwartz / Stonehenge Consulting Services (503)777-0095
Keywords: Perl training, UNIX[tm] consulting, video production, skiing, flying
Email: <merlyn@stonehenge.com> Snail: (Call) PGP-Key: (finger merlyn@ora.com)
Web: <A HREF="http://www.stonehenge.com/merlyn/">My Home Page!</A>
Quote: "I'm telling you, if I could have five lines in my .sig, I would!" -- me


------------------------------

Date: Sat, 14 Jun 1997 12:14:31 -0600
From: wisank@www.pds.co.th
Subject: illegal seek in &chat'open_port
Message-Id: <866307655.22537@dejanews.com>

 I tried to connect to other host with the code below
and got an "Illegal seek, open connection error" in
the statement "&chat'open_port"
 I'm using perl 5.003 with solaris 2.5 and I did h2ph already.

Thanks a lot helps..
wisan k.

sub HTTP_get
{
    # This subroutine should be called with arguments of the host, the
port
    # and the path. Another routine would split a URL into these parts.
    # For example, to retrieve http://www.netgen.com/ one would call:
    # &HTTP_get("www.netgen.com",80,"/");

    local ($host,$port,$path) = @_;

    # Open the connection to the server
    if (!&chat'open_port ($host, $port))
       {
          print $!;
          print "\n open connection error...\n";
      }

-------------------==== Posted via Deja News ====-----------------------
      http://www.dejanews.com/     Search, Read, Post to Usenet


------------------------------

Date: Sun, 15 Jun 1997 03:02:00 -0500
From: "Joshua Frank" <joshua@midwest.net>
Subject: Look for a good IDE for win32
Message-Id: <01bc7962$5b986080$79d21bce@behb>

Does anyone know of a good integrated development enviroment for windows
95.
I getting tired of writing my programs with notepad. I found a one for perl
4 but I could find one for perl 5. 
Thanks,
joshua@midwest.net


------------------------------

Date: 14 Jun 1997 20:00:51 GMT
From: lychow@hkucs.org (Lap Yip...)
Subject: Mail::Send doesnt work?
Message-Id: <5nut9j$1mk$1@infosite.cs.hku.hk>

I have used the Mail::Send module to send an email, but the received email subject is moved to the body of the email with leadng string ~s. Also other header line like cc, bcc dont work neither. Can anyone help?

$msg = new Mail::Send;
$msg->to('mskay@hkucs.org');
$msg->subject('this subject will be moved to the body with leading ~s');
$fh->$msg->open();
print $fh "this is the content";
$fh->close();

regards

Marcus Kay
mskay@hkucs.org


------------------------------

Date: 14 Jun 1997 22:57:17 GMT
From: nvp@shore.net (Nathan V. Patwardhan)
Subject: Re: Mail::Send doesnt work?
Message-Id: <5nv7kd$jt8@fridge-nf0.shore.net>

Lap Yip... (lychow@hkucs.org) wrote:
: I have used the Mail::Send module to send an email, but the received email subject is moved to the body of the email with leadng string ~s. Also other header line like cc, bcc dont work neither. Can anyone help?

Theoretically ~s in 'mail' sends a subject, but I also had a problem
with this in Mail::Send.  When I used 'sendmail' with Mail::Send, all
was okay.

--
Nathan V. Patwardhan
nvp@shore.net



------------------------------

Date: Sat, 14 Jun 1997 21:15:48 -0500
From: Bob Berman <rjberman@mindspring.com>
Subject: need help with "strict"
Message-Id: <33A341E9.1529039E@icehouse.com>

Why does this give me an error?


use strict;
{ package testpkg;

   sub connect {
        my($drh, $host, $dbname, $junk, $attrib )= @_;

                my $key;
                foreach $key ( keys %$attrib ) {
                    print "\tKey: $key\n";
                  }
        }

}

testpkg::connect ('java','bob1','bob2','bob3','bob4','bob5');

143-> perl strict.pl
Can't use string ("bob4") as a HASH ref while "strict refs" in use at
strict.pl line 8.


------------------------------

Date: 15 Jun 1997 03:24:03 GMT
From: nvp@shore.net (Nathan V. Patwardhan)
Subject: Re: no cache
Message-Id: <5nvn8j$jc0@fridge-nf0.shore.net>

Dennis A. Dean II (dean@zeus.bwh.harvard.edu) wrote:
: I'm using perl to displace some information called from an ingres
: database.  I want to the pages generated by the scripts not to cache.  

Perl doesn't know anything about this.

: I know there is a no cache directive in httpd, ... I just don't know
: where to put it.

Please check a WWW server or CGI programming newsgroup.

--
Nathan V. Patwardhan
nvp@shore.net



------------------------------

Date: Sat, 14 Jun 1997 03:07:27 GMT
From: chrisw@netinfo.com.au (Chris Williams)
Subject: Re: Parsing Comma Delemited Text DataBase
Message-Id: <33a208cb.2198532@newshost.netinfo.com.au>

On Mon, 09 Jun 1997 12:05:35 -0400, Larry D'Anna
<ldanna@ix.netcom.com> wrote:

>David Keeney wrote:
>> 
>> On Sun, 08 Jun 1997 10:57:19 -0400, Nasser Al-Zawawi
>> <nzawawi@worldnet.att.net> wrote:
>> 
>> >I trying to figure out how to parse a Text DataBase that is Comma
>> >delimeted and has "" Double quotes for its strings fields.  My problem
>> >is withen these string fields you could have a comma that should not be
>> >parsed.
>> >Meaning
>> >1,"Hello, World",6,"hi"
>> >Should be parsed into 4 fields
>> >1. 1
>> >2. "Hello, World"
>> >3. 6
>> >4. "hi"
>> >
>> >Not 5 fields
>> >1. 1
>> >2. "hello
>> >3. World"
>> >4. 6
>> >5. "hi"
>> >


A number of useful solutions to this problem have  been posted.   I
have a similar requirement:  How to parse CSV files where the
double-quote is a valid character within a quoted string, and the
double-quote is not escaped by a backslash or similar.

ie:  "one",2,"three","Saucepan 5" Teflon coated"     which is a four
field record.

This situation has arisen due the inadequate specification of a data
delivery format.   We're fixing the spec, but the old data is still
'corrupt'.   I'm trying to adapt some of the regular expressions
suggested here but that double-quote is painful to accommodate.   My
best solution to date is to read the line character at a time and use
some logic to guess the type of double-quote based on whether it's
followed by a comma or the EOL.   This fails if the record is:

"one",2,"three","Saucepan 5", Teflon coated"

Any thoughts?   I'm sure TMTOWTDI, but I haven't found a bullet proof
one yet.

Thanks...
Chris Williams
Canberra, Australia

Welcome to the information goat track


------------------------------

Date: Fri, 13 Jun 1997 20:08:40 GMT
From: tcyang@netcom.com (Tung-chiang Yang)
Subject: Re: Perl to awk translator
Message-Id: <tcyangEBqDAG.510@netcom.com>

Some features of perl does not allow easy translation to awk.  This seems
to be in the FAQ or some related documents.

==========================
Martin Rvth typed when the mommy tyrannosaurus found him:
: Hello,

: I'm looking for an easy method to translate perl scripts to awk. I know
: about the a2p translator, but is there something like a p2a translator.

--
========= Try the low-crossposting robomoderated 'alt.culture.taiwan' ===

soc.culture.taiwan, soc.culture.china (by SCC FAQ Team) FAQ's:
   http://www.iglou.com/tcyang/Taiwan_faq.shtml, China_faq.shtml


------------------------------

Date: Sat, 14 Jun 1997 19:46:59 -0400
From: Bill Cowan <billc@tibinc.com>
To: Juergen Amthauer <Juergen.Amthauer@h01x.nbg.scn.de>
Subject: Re: Perl5 on NT / Solaris, difference ?
Message-Id: <33A32D73.7439@tibinc.com>

Juergen Amthauer wrote:
> 
> Hello
> 
> I'm a newbie in Perl working and wanna know the differencies when running
> Perl scripts written on a Solaris 2.5.1
> under WINDOWS NT 4.0.
> Where do I have to take care ?
> Do I have to translate the script formal (newline, newline + linefeed ??)
> How can I determine on which OS I'm running inside the script ? Is there a
> system call like
> 
> if  OS == NT
> then  nt - work
> else  solaris - work
> 
> Is there a page in the web with answers to this interoperation problems ?

See Win32 Perl FAQ for some Unix/NT differences.

Useful URLs for Win32 Perl (NT Perl)
------------------------------------
Win32 Perl for Windows NT:
    http://www.activeware.com/    [also online web pages]
    http://www.perl.com/CPAN/ports/win32/Perl5/

Searchable Archive for Perl-Win32-users Mailing List:
    http://www.divinf.it/perl-win32/index.sht
    (Does not include messages for last 2 to 3 months.)

Evangelo's Frequently Asked Questions (FAQ):
    http://www.endcontsw.com/people/evangelo/Perl_for_Win32_FAQ.html

Database access via ODBC by Dave Roth's Win32::ODBC module:
    Win32::ODBC Home Page with Online Documentation:
        http://www.roth.net/odbc/
    Also see FAQ for database questions.

    Download from:
        http://www.perl.com/CPAN/authors/Dave_Roth/

CPAN has Win32 specific modules at:
    http://www.perl.com/CPAN/modules/by-category/
and follow category 22 for Windows.

Note:  These URLs also point to other Win32 Perl resources.

-- Bill
-----------------------------------------------------------------------
Bill Cowan <billc@tibinc.com>    Voice:919-490-0034   Fax:919-490-0143
Tiburon, Inc./3333 Durham-Chapel Hill Blvd Suite E-100/Durham, NC 27707


------------------------------

Date: Sat, 14 Jun 1997 19:54:40 -0400
From: Bill Cowan <billc@tibinc.com>
To: Alexandre Ziablitsev <alz@gse.de>
Subject: Re: Problems with Win32::ODBC ?!
Message-Id: <33A32F40.251C@tibinc.com>

Alexandre Ziablitsev wrote:
> 
> Hi!
> 
> I am trying to access an Oracle database on the NT 3.51 server from
> Win95 through Win32::ODBC and either get a "Runtime exception error:"
> or my computer just halt.
> 
> What we have is: Oracle 7.3.2.2.1 and the Oracle ODBC driver
> version 1.15.3.1.0A
> 
> I've tryed also the Intersolv ODBC driver (v.2.11 32-bit Oracle7)-
> the same result
> 
> Any help would be appreciated. Thank you.
> 
>         Alex

You may want to check www.roth.net and see Win32::ODBC FAQ. I think
there was something about Oracle ODBC driver, but I can not remember
exactly where I saw this.  If no luck, also try www.dejanews.com for
comp.lang.perl.*. 

-- Bill
-----------------------------------------------------------------------
Bill Cowan <billc@tibinc.com>    Voice:919-490-0034   Fax:919-490-0143
Tiburon, Inc./3333 Durham-Chapel Hill Blvd Suite E-100/Durham, NC 27707


------------------------------

Date: Sat, 14 Jun 1997 16:52:07 -0700
From: Tom Phoenix <rootbeer@teleport.com>
To: "J. Paul Reed" <preed@psd.k12.co.us>
Subject: Re: RegExp Question (something stupid, I'm sure :)
Message-Id: <Pine.GSO.3.96.970614164542.4163C-100000@kelly.teleport.com>

On 14 Jun 1997, J. Paul Reed wrote:

> Hey all!
> 
> How's it going?

If I told you, that would be off topic for this newsgroup. :-)

> When I run the following, I don't get any output? Can anyone tell me why?

> #!/usr/bin/perl
> 
> $blah = "EP = 23412;";
> 
> if ($blah =~ /^EP = [\w*\d*]\;$/) {
> print "YEAH!\n";
> }

Well, I'd say it's because the string didn't match the regular expression. 
Although \w and \d are both valid in a character class, the star doesn't
mean anything special, so that character class matches any word character
or any digit (which should be included in the word characters) or a star. 
You also have a useless (but harmless) backslash just after the character
class. 

Maybe you meant to use this pattern?

    /^EP = \w*;$/

Hope this helps!

-- Tom Phoenix        http://www.teleport.com/~rootbeer/
rootbeer@teleport.com   PGP  Skribu al mi per Esperanto!
Randal Schwartz Case:  http://www.rahul.net/jeffrey/ovs/



------------------------------

Date: Sun, 15 Jun 1997 05:56:22 -0700
From: Tom Phoenix <rootbeer@teleport.com>
To: "<Will Sexton>" <sextw@ils.unc.edu>
Subject: Re: unwanted \n's in file with wrapped lines
Message-Id: <Pine.GSO.3.96.970615054051.10052A-100000@kelly.teleport.com>

On Sat, 14 Jun 1997, <Will Sexton> wrote:

> I'm trying to get a perl script to read in a file with some very
> long lines.  The problem is, the file wraps some of these long lines so
> that perl sees newline characters where there should be none.  

Surely you can't mean that the _file_ is wrapping long lines. Files can't
do anything to their own data! :-)  Maybe you mean that your text editor
is doing this. (I don't know of any file system which does this, although
that may be it as well.) Of course, it's not Perl's doing.

> Is it possible to store text files with unlimited line lengths?

Sure, unless your system forbids it.

> Or, can I make perl unwrap the text when reading it in, or otherwise
> ignore these \n's?

You can do that, too. Perhaps you want to ignore all single newlines and
see a newline only when there is more than one newline in a row. You may
wish to change a newline between two non-whitespace characters to a space,
so that you won't inadvertantly run together two lines.

    # Read paragraph from STDIN
    sub readpara {
	local($/) = '';		# read by paragraphs
	return unless defined($_ = <STDIN>);
	s/(\S)\n(\S)/$1 $2/g;	# Single newlines to space within para
	tr/\n//;		# Remove other newlines
	"$_\n";			# Except for one at the end
    }

This sub has a number of obvious shortcomings, but I hope it gets you
started. Good luck!

-- Tom Phoenix        http://www.teleport.com/~rootbeer/
rootbeer@teleport.com   PGP  Skribu al mi per Esperanto!
Randal Schwartz Case:  http://www.rahul.net/jeffrey/ovs/



------------------------------

Date: Sun, 15 Jun 1997 07:27:08 GMT
From: abigail@fnx.com (Abigail)
Subject: Re: URL worthy strings in Perl
Message-Id: <EBt3D8.KyK@nonexistent.com>

Rudy Richter (rudy@mitec.net) wrote on 1382 September 1993 in
<URL: news:33A0D82C.34B@mitec.net>:
++ We've all seen this...
++ 
++ [ Home brew code to decode/encode URLs ]
++ 
++ This sucks, IMHO, and I would love to see something better..

use CGI;



Abigail
-- 
perl5.004 -wMMath::BigInt -e'$^V=new Math::BigInt+qq;$^F$^W783$[$%9889$^F47$|88768$^W596577669$%$^W5$^F3364$[$^W$^F$|838747$[8889739$%$|$^F673$%$^W98$^F76777$=56;;$^U=$]*(q.25..($^W=@^V))=>do{print+chr$^V%$^U;$^V/=$^U}while$^V!=$^W'


------------------------------

Date: Sat, 14 Jun 1997 14:03:48 -0400
From: Pascal Deschenes <pasde@videotron.ca>
Subject: Using PERL to interact with the Informix Online Workgroup Server
Message-Id: <33A2DD04.8C7@videotron.ca>

Hello, 
I am wondering where I could find some information about 
using PERL to interact with the informix Online workgroup
Server which is given within the Netscape Enterprise Server
3b. If there is a special perl module to use or if i could
use the AnyDBM_File module. If someone has some experience
doing this kinda task just drop me a email with a sample
script for exemple or an address where i could find the 
information.

Any help would be appreciated. Thanks.
-- 
Pascal Deschjnes, Webmaster 
DaVinci Telecommunications
mailto:pasde@videotron.ca 
"Everything looks fine from a certain point of view." -me
NOTE: comments in this post may not reflect my employer idea


------------------------------

Date: 8 Mar 97 21:33:47 GMT (Last modified)
From: Perl-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin) 
Subject: Digest Administrivia (Last modified: 8 Mar 97)
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.  

To submit articles to comp.lang.perl.misc (and this Digest), send your
article to perl-users@ruby.oce.orst.edu.

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.

The Meta-FAQ, an article containing information about the FAQ, is
available by requesting "send perl-users meta-faq". The real FAQ, as it
appeared last in the newsgroup, can be retrieved with the request "send
perl-users FAQ". Due to their sizes, neither the Meta-FAQ nor the FAQ
are included in the digest.

The "mini-FAQ", which is an updated version of the Meta-FAQ, is
available by requesting "send perl-users mini-faq". It appears twice
weekly in the group, but is not distributed in the digest.

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 V8 Issue 612
*************************************

home help back first fref pref prev next nref lref last post