[6689] in Perl-Users-Digest

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

Perl-Users Digest, Issue: 314 Volume: 8

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Wed Apr 16 11:17:12 1997

Date: Wed, 16 Apr 97 08:00:35 -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           Wed, 16 Apr 1997     Volume: 8 Number: 314

Today's topics:
     Re: "Dummies" book any good? <dehon_olivier@jpmorgan.com>
     Re: "Dummies" book any good? <merlyn@stonehenge.com>
     Re: "my" variable affects namespace "outside" block? (Phil Hanna)
     Re: $= <seay@absyss.fr>
     Re: -e command-line option <merlyn@stonehenge.com>
     Re: [Q] Converting a string to lower case <tchrist@mox.perl.com>
     Re: [Q] Converting a string to lower case (Andy Wardley)
     Re: [Q] How to capitilize beginning of words (Mike Stok)
     Re: [Q] How to capitilize beginning of words (Mike Stok)
     Re: [Q] How to capitilize beginning of words (Jeff Stampes)
     Apologies... (Gary Chambers)
     Re: Apologies... (David Alan Black)
     Re: Array Elements <tchrist@mox.perl.com>
     Re: Array Elements (Tamas Vincze)
     Re: blocking server example? (Mike Stok)
     Re: Code without comments (Was: Re: Unix and ease of us (Cary B. O'Brien)
     gethostname? (Justin C Lloyd)
     Re: gethostname? (Mike Stok)
     Re: How Do You Handle Enumerations in Perl Extensions? <mcampbel@tvmaster.turner.com>
     how to mask ctrl_c in client? (Banghe Xing)
     I need your help! perl WIN32 kg@f.materna.de
     Re: Interactive HTML forms - NO CGI! <merlyn@stonehenge.com>
     Re: Match ? (ALASTAIR AITKEN CLMS)
     Re: Match ? (Mike Stok)
     Re: Perl and recursion (David Alan Black)
     Perl Jamm (was: Re: Kudos to Tom Christiansen and probl (Billy Chambless)
     Re: Perl regular expressions - HTML <danboo@ixl.com>
     Re: removing first 2 characters from scalar value. (Bob Wilkinson)
     Re: sorting a *file* (yeah, I know, it's a mainframe co (Bennett Todd)
     Re: Two Perl Language Questions <tchrist@mox.perl.com>
     Re: Two Perl Language Questions <seay@absyss.fr>
     Re: Unix and ease of use  (WAS: Who makes more ...) (Jettero Heller)
     Re: Unix and ease of use (WAS: Who makes more ...) nospam@minivend.com
     WANTED: perl guru ;-) <ss@ee.ed.ac.uk>
     Digest Administrivia (Last modified: 8 Mar 97) (Perl-Users-Digest Admin)

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

Date: 16 Apr 1997 13:59:47 +0200
From: Olivier Dehon <dehon_olivier@jpmorgan.com>
Subject: Re: "Dummies" book any good?
Message-Id: <njzencbjhzg.fsf@jpmorgan.com>

jon@amxdigital.com (Jonathan Peterson) writes:

> Explaining to a real beginner that:
> 
> if ($a == 1) {
> 	print ("Whee!");
> 	}
> 
> is the same as
> 
> $a || print ("Whee!");
> 
> is not something that you can do in a few sentences. More like a few
> chapters.

Well, I guess it will take a lot of sentences to explain something
that's completely *WRONG* !!! I think you need to reread your book !

Olivier Dehon.


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

Date: 16 Apr 1997 07:43:55 -0700
From: Randal Schwartz <merlyn@stonehenge.com>
To: Terry Michaels <74331.3261@CompuServe.COM>
Subject: Re: "Dummies" book any good?
Message-Id: <8cencbm3is.fsf@gadget.cscaper.com>

>>>>> "Terry" == Terry Michaels <74331.3261@CompuServe.COM> writes:

Terry> [...]  I think a beginner
Terry> should begin using the debugger as soon as possible.

I think a beginner should be taught to write correct programs,
thus avoiding the use of the debugger, as soon as possible.

:-)

print "Just another Perl hacker," # but not what the media calls "hacker!" :-)
## legal fund: $20,495.69 collected, $182,159.85 spent; just 503 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: Wed, 16 Apr 1997 13:06:52 GMT
From:  (Phil Hanna)
Subject: Re: "my" variable affects namespace "outside" block?
Message-Id: <3354cd82.163688875@newshost.unx.sas.com>

(The -w switch must be used in order for the error to be duplicated.)

I can partially explain it -- the use of "my $file" makes the variable
$file local to the block in which it is used, so the "print" statement
above it (which IS in the same block) refers to the local copy of
$file, which has not yet been initialized (it is initialized on the
next line).  The error goes away if you set $outerfile = $file before
the if statement, and refer to $outerfile in the two print statements
(in the if and else sections).

However, this doesn't explain why it is uninitialized in the "else"
block that follows.  According to the perlsyn.htm web page, the "if"
and "else" blocks are separate blocks.  However, it looks like the
scope of "my $file" extends to the else block that follows.

Is this possibly a real bug?

------------------------------------------
Phil Hanna (saspeh at unx dot sas dot com)
Econometrics and Time Series R&D
SAS Institute, Inc.


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

Date: Wed, 16 Apr 1997 16:03:32 +0100
From: Douglas Seay <seay@absyss.fr>
To: Brian Lorraine <lorraine@ait.nrl.navy.mil>
Subject: Re: $=
Message-Id: <3354EA44.75C2@absyss.fr>

Brian Lorraine wrote:
> 
> DO I have to associate the predefined "$=" to the file i'm refering to
> somehow or will it automatically assume it's counting the lines in the
> LAST FILE that I opened? I'm trying to create just a quick perl script
> that reads a file and tells how many lines are in it.

There is no reason for creating a Perl script just to do this as the
standard unix tool "wc" will do that for you.  Try "wc -l < file" and it
will give you the number of lines in the file. By default it will give
you the number of lines, the number of words and the number of bytes in
the file.

$= says how many lines there are per page and is used with format
statements and write.  This variable is described on p.130 of the Camel
II under the header "Perl Filehandle Special Variables".  $= is used for
controlling the output of the write statement.  When you use $=, it
references the last file select'ed.  Look up "select" in the Camel or
perlfunc for details.  Note that you want the one parm version, not the
for parameter version of select.


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

Date: 16 Apr 1997 05:05:56 -0700
From: Randal Schwartz <merlyn@stonehenge.com>
Subject: Re: -e command-line option
Message-Id: <8cu3l7mau3.fsf@gadget.cscaper.com>

>>>>> "Russ" == Russ Allbery <rra@stanford.edu> writes:

Russ> Ronald Fischer <rfi@uebemc.siemens.de> writes:
>> perl -e 'while(<>){ print "$. $_"; }' -e 'print "DONE\n"' < ~/.login 

Russ> perl -pe 'END { print "DONE\n" } print "$. "' < ~/.login

      perl -pe 's/^/$. /; $_ .= "DONE\n" if eof' ~/.login

:-)

print "Just another Perl hacker," # but not what the media calls "hacker!" :-)
## legal fund: $20,495.69 collected, $182,159.85 spent; just 503 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: 16 Apr 1997 13:47:29 GMT
From: Tom Christiansen <tchrist@mox.perl.com>
Subject: Re: [Q] Converting a string to lower case
Message-Id: <5j2l9h$9si$3@csnews.cs.colorado.edu>

 [courtesy cc of this posting sent to cited author via email]

In comp.lang.perl.misc, 
    abw@peritas.com (Andy Wardley) writes:
:# first letter capitalisation
:$variable =~ s/     # search for...
:            \b      # word boundary
:            (\w)    # first "word" character
:            (\w*)   # the rest of the "word"
:            /       # replace with...
:            \U$1    # match 1 converted to upper case
:            \L$2    # match 2 converted to lower case
:            /gx;    # g = "global" (match all), x = ignore these comments

That isn't going to work.  Run it to see why.

--tom
-- 
	Tom Christiansen	tchrist@jhereg.perl.com

You want it in one line?  Does it have to fit in 80 columns?   :-)
                --Larry Wall in <7349@jpl-devvax.JPL.NASA.GOV>


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

Date: 16 Apr 1997 15:05:37 +0100
From: abw@peritas.com (Andy Wardley)
Subject: Re: [Q] Converting a string to lower case
Message-Id: <5j2mbh$fq6@aoxomoxoa.peritas.com>

Andy "dunce" Wardley <abw@peritas.com> wrote:
>
># first letter capitalisation
>$variable =~ s/     # search for...
>            \b      # word boundary
>            (\w)    # first "word" character
>            (\w*)   # the rest of the "word"
>            /       # replace with...
>            \U$1    # match 1 converted to upper case
>            \L$2    # match 2 converted to lower case
>            /gx;    # g = "global" (match all), x = ignore these comments

Nope.  It works without the whitespace but not as laid out above.

  $variable =~ s/\b(\w)(\w*)/\U$1\L$2/gx;

That's what you get for trying to lay something out nicely *after*
you test the code.


Note that the FAQ has a slightly neater solution:

  $line =~ s/(\w+)/\u\L$1/g;



A


-- 
Andy Wardley <abw@peritas.com>  **NEW** http://www.peritas.com/~abw 
A responsible and professional individual who has no need for silly 
comments, inane banter or bizarre "in-jokes" in his signature file.  


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

Date: 16 Apr 1997 12:32:41 GMT
From: mike@stok.co.uk (Mike Stok)
Subject: Re: [Q] How to capitilize beginning of words
Message-Id: <5j2gt9$d3j@news-central.tiac.net>

In article <comdog-1504972057440001@nntp.netcruiser>,
brian d foy <comdog@computerdog.com> wrote:

>"How do I capitalize all the words on one line?" link [3], which then
>tells you:
>
>   To make the first letter of each word upper case: 
>   $line =~ s/\b(\w)/\U$1/g;
>
>which seems rather odd considering that it has other effects...

>my $string = "i don't like to do my homework";
>
>$string =~ s/\b(\w)/\U$1/g;

>I Don'T Like To Do My Homework
>      ^^ hmmmm...

It depends on how you define words, in the context of mumbling about perl
code a word is a sequence of \w characters in a string - for a diversion
about what various tools consider as \w characters and word boundaries you
can check out Jeffrey Friedl's _Mastering Regular Expressions_ published
by O'Reilly - and ' isn't a \w character so don't is wdo words separated
by a '.  Taking o'reilly as an example the regex presented does a
reasonable thing.

The lesson here is that the appropriate solution depends on the data
you're likely to be operating on, the time you have to spend generating
the solution and whether you care about boundary conditions.  If this
gives people a reasonable starting point then the FAQ has done its job.

Maybe in this case you might consider an expression like the one used
below to allow a little more latitude by applying a heuristic that assumes
' followed by 1 or 2 letters (OK, \w characters...) is likely to be some
contraction.

#!/usr/local/bin/perl -w

$string = "i don't like to do my homework, mr o'reilly";
$string =~ s/\b(\w)(\w*'\w\w?\b|)/\U$1\E$2/g;

print $string, "\n";

__END__

Reading the FAQ isn't guaranteed to get you all the way to the particular
solution you need, but will frequently suggest worthwhile starting points.
It's also worth reading the FAQ as it may unearth techniques to solve
problems which are novel to you but easy to do in Perl.

Hope this helps,

Mike
-- 
mike@stok.co.uk                    |           The "`Stok' disclaimers" apply.
http://www.stok.co.uk/~mike/       |   PGP fingerprint FE 56 4D 7D 42 1A 4A 9C
http://www.tiac.net/users/stok/    |                   65 F3 3F 1D 27 22 B7 41
stok@psa.pencom.com                |      Pencom Systems Administration (work)


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

Date: 16 Apr 1997 12:35:09 GMT
From: mike@stok.co.uk (Mike Stok)
Subject: Re: [Q] How to capitilize beginning of words
Message-Id: <5j2h1t$d63@news-central.tiac.net>

In article <5hp0j5.5ou.ln@localhost>, Tad McClellan <tadmc@flash.net> wrote:

>Of course, for this method to work, you need to be able to
>spell capitalize  ;-)

You mean "capitalise" I suspect ;-)

Mike

-- 
mike@stok.co.uk                    |           The "`Stok' disclaimers" apply.
http://www.stok.co.uk/~mike/       |   PGP fingerprint FE 56 4D 7D 42 1A 4A 9C
http://www.tiac.net/users/stok/    |                   65 F3 3F 1D 27 22 B7 41
stok@psa.pencom.com                |      Pencom Systems Administration (work)


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

Date: 16 Apr 1997 13:46:36 GMT
From: stampes@xilinx.com (Jeff Stampes)
Subject: Re: [Q] How to capitilize beginning of words
Message-Id: <5j2l7s$hg7$1@neocad.com>

amas@lhr-sys.dhl.com wrote:
: I have looked in O'Reilly's Learning Perl book, but can't seem to
: find a solution to this problem.  I have a string of words that are
: all in caps and I would like to convert it to lower case and then
: capitilize the beginning of each word. I know how to do the first
: part:
:    $myString =~ tr/A-Z/a-z/;

Why does everybody want to do this with tr/// s/// or the like?

$foo = 'ALL UPPER CASE';
foreach (split / /,$foo) {$bar .= ucfirst lc $_.' '}


--
Jeff Stampes -- Xilinx, Inc. -- Boulder, CO -- jeff.stampes@xilinx.com


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

Date: 16 Apr 1997 13:00:09 GMT
From: geecee@burbot.netquarters.net (Gary Chambers)
Subject: Apologies...
Message-Id: <5j2igp$gi@noc1.gwi.net>

I hope this isn't considered spam...  I apologize for posting so many
messages on the array element subject.  I thought my news server was
down because I could never get an acknowledgement that any of the
messages was posted.

-- 
GeeCee/NQ

// --------------------------------------
// Gary Chambers <geecee@netquarters.net>
// NetQuarters, Incorporated
// --------------------------------------



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

Date: 16 Apr 1997 13:19:34 GMT
From: dblack@icarus.shu.edu (David Alan Black)
Subject: Re: Apologies...
Message-Id: <5j2jl6$ef6@pirate.shu.edu>

geecee@burbot.netquarters.net (Gary Chambers) writes:

>I hope this isn't considered spam...  I apologize for posting so many
>messages on the array element subject.  I thought my news server was
>down because I could never get an acknowledgement that any of the
>messages was posted.

I was curious to see how severe your criticism of the Camel
was going to get after 12 or 13 increments :-)

David Black
dblack@icarus.shu.edu


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

Date: 16 Apr 1997 13:44:30 GMT
From: Tom Christiansen <tchrist@mox.perl.com>
Subject: Re: Array Elements
Message-Id: <5j2l3u$9si$2@csnews.cs.colorado.edu>

 [courtesy cc of this posting sent to cited author via email]

In comp.lang.perl.misc, 
    geecee@gwi.net (Gary W. Chambers) writes:
:Can someone offer definitive information on obtaining the number of 
:elements in an array?  Camel and Llama are vague, 

I don't find this particularly vague: 

    You may find the number of elements in the array @days by evaluating
    @days in a scalar context, such as:

	@days + 0;      # implicitly force @days into a scalar context
	scalar(@days)   # explicitly force @days into a scalar context

    Note that this only works for arrays.  It does not work for list
    values in general.  A comma-separated list evaluated in a scalar
    context will return the la st value, like the C comma operator.

--tom
-- 
	Tom Christiansen	tchrist@jhereg.perl.com


You are the sponsor for the account andrew (Andrew Hume).


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

Date: 16 Apr 1997 14:42:13 GMT
From: tvs@lord.banki.hu (Tamas Vincze)
Subject: Re: Array Elements
Message-Id: <5j2og5$ht4$1@goliat.eik.bme.hu>

In comp.lang.perl.misc Gary W. Chambers <geecee@gwi.net> wrote:
: Can someone offer definitive information on obtaining the number of 
: elements in an array?  Camel and Llama are vague, and I'm using:

If you have the array @array, then just say:

print "The number of elements is $#array\n";

Tvs


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

Date: 16 Apr 1997 14:43:53 GMT
From: mike@stok.co.uk (Mike Stok)
Subject: Re: blocking server example?
Message-Id: <5j2oj9$4d9@news-central.tiac.net>

In article <5j0b4d$i3m$1@neocad.com>, Jeff Stampes <stampes@xilinx.com> wrote:
>I'm probably being a bonehead, but I'll let someone point it out
>and entertain the rest of you.
>
>I'm working on a testcase server, as a way to avoid needing a locking
>mechanism that would need to be ported to 6 different platforms.
>I have basic client/server functionality working, but am having 
>problems getting the server to only process one request at a time and
>queue up the remaining requests and prcess them in order.
>
>Does anyone have a good basic example of a blocking server like this
>that will only fork off one request at a time? 

You could just use a non-forking server and let the listen have a backlog
of pending connections maintained by the system.  Another take on it may
be to have the forking server do a wait in the parent branch of the fork
so that it only carries on once the child has finished.

perl's listen maps onto the C library listen, the QUEUESIZE says how many
connections are allowed to pile up.  Some OSes have broken or limited
implementations...

       listen SOCKET,QUEUESIZE
               Does the same thing that the listen system call
               does.  Returns TRUE if it succeeded, FALSE
               otherwise.  See example in the section on Sockets:
               Client/Server Communication in the perlipc
               manpage.


Hope this helps,

Mike
-- 
mike@stok.co.uk                    |           The "`Stok' disclaimers" apply.
http://www.stok.co.uk/~mike/       |   PGP fingerprint FE 56 4D 7D 42 1A 4A 9C
http://www.tiac.net/users/stok/    |                   65 F3 3F 1D 27 22 B7 41
stok@psa.pencom.com                |      Pencom Systems Administration (work)


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

Date: 16 Apr 1997 10:00:20 -0400
From: cobrien@access5.digex.net (Cary B. O'Brien)
Subject: Re: Code without comments (Was: Re: Unix and ease of use (WAS: Who makes more ...))
Message-Id: <5j2m1k$ngf@access5.digex.net>

Newsgroups trimmed.

In article <01bc4838$3b0234a0$87ee6fce@timpent.a-sis.com>,
Tim Behrendsen <tim@a-sis.com> wrote:

[bloatware discussion elided]

>
>Come on, Peter.  Think about what you are defending.
>
>I don't accept excuses for my employees, I don't accept excuses
>for myself, and I don't accept them for Larry Wall.  There is no
>excuse for code without comments.  Period.
>

Well...

The firewall code distributed by TIS starts out by saying:

-- quote ---

/*
        smap - sendmail wrapper.

        the object of this program is to allow us to present an SMTP service
        for people to talk to, which is unprivileged, and runs in a chrooted
        directory. a secondary requirement is that the code be as simple as
        possible, to permit manual review. this code, therefore, contains
        no comments other than this one - comments being an indication that
        code is too complex to be trusted.

-- end quote --

So there is, according to this person, an excuse for code
without comments.

[further discussion elided]

-- cary
cobrien@access.digex.net




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

Date: 16 Apr 1997 11:44:55 GMT
From: lloyd@cs.fsu.edu (Justin C Lloyd)
Subject: gethostname?
Message-Id: <5j2e3n$as2@news.fsu.edu>

Am I competely missing something, or does perl not have a "gethostname"
function (not "gethostbyname")?  It seems to have everything but that.

JcL

-- 
Justin C. Lloyd ______________________________________________________________
Graduate Teaching Assistant                phone: 904/644-0559
Department of Computer Science             email: lloyd@cs.fsu.edu
Florida State University                   www:   http://www.cs.fsu.edu/~lloyd

                                 P + L = :)


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

Date: 16 Apr 1997 14:28:01 GMT
From: mike@stok.co.uk (Mike Stok)
Subject: Re: gethostname?
Message-Id: <5j2nlh$3j6@news-central.tiac.net>

In article <5j2e3n$as2@news.fsu.edu>, Justin C Lloyd <lloyd@cs.fsu.edu> wrote:
>Am I competely missing something, or does perl not have a "gethostname"
>function (not "gethostbyname")?  It seems to have everything but that.

If you're using some fairly recent perl then you can say

  use Sys::Hostname;

  my $name = hostname;

perl 5.xxx has stacks of functionallity implemented as modules so you can
select which programs carry which baggage.

Hope this helps,

Mike

-- 
mike@stok.co.uk                    |           The "`Stok' disclaimers" apply.
http://www.stok.co.uk/~mike/       |   PGP fingerprint FE 56 4D 7D 42 1A 4A 9C
http://www.tiac.net/users/stok/    |                   65 F3 3F 1D 27 22 B7 41
stok@psa.pencom.com                |      Pencom Systems Administration (work)


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

Date: 16 Apr 1997 08:06:35 -0400
From: Mike Campbell <mcampbel@tvmaster.turner.com>
Subject: Re: How Do You Handle Enumerations in Perl Extensions?
Message-Id: <r5pvvvjho4.fsf@tvmaster.turner.com>

Douglas Seay <seay@absyss.fr> writes:

> Tom Christiansen wrote:
> > 
> > The defining Truth and Falsehood is an Abomination: may the Curse
> > of broken [ ad nauseaum ]

> He's gone from polyglot to King James.  What's next on his
> linguistic agenda?  Sanskrit perhaps?  Linear B?

My vote would be to simply answer the question or not.  We already
know (and are reminded daily) of his seemingly endless rapier-like
wit.


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

Date: 16 Apr 1997 14:04:54 GMT
From: bxing@cs.uno.edu (Banghe Xing)
Subject: how to mask ctrl_c in client?
Message-Id: <5j2ma6$66i$1@www.uno.edu>

Hello everybody here,

I have written a server and client program. The server surpports more than one clients. So that if one client enters ctrl_c should not cause the termination
of the server.
Question: How can I provent from this? That is, the server should not
affect by client's ctrl_c?


Thanks,

Bangh
email:
bxing@cs.uno.edu



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

Date: Wed, 16 Apr 1997 13:36:15 GMT
From: kg@f.materna.de
Subject: I need your help! perl WIN32
Message-Id: <3354d574.24071412@news.materna.de>

HELP!

I use perl under Windows NT 3.51 (and I am a bloody newbie).

My version:
Summary of my perl5 (patchlevel 1) configuration:
  Platform:
    osname=MSWin32, osver=3.51, archname=i386-win32

Characteristics of this binary (from libperl):
  Built under MSWin32
  Compiled at Apr 10 1997 17:50:28

I want to use the in-place editing feature as described in the Camel
Book page 353
eg:
perl -pi.bak test.pl Inputfile.txt    

But I don4t want the bak-file to be created. The book says:
"If no extension is supplied, no backup is made, and the file is
modified in place"

So I tried:
   perl -pi test.pl Inputfile.txt    

this resulted in the following error msg:
   Can't do inplace edit without backup.


Please tell me, if there4s a way to skip the creation of the bak-file.

Thanx 4 your help
Klaus Glahn
(kg@f.materna.de)


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

Date: 16 Apr 1997 05:08:59 -0700
From: Randal Schwartz <merlyn@stonehenge.com>
To: mail-it@web-xpress.com
Subject: Re: Interactive HTML forms - NO CGI!
Message-Id: <8cragbmap0.fsf@gadget.cscaper.com>

>>>>> "Robert" == Robert Evans <mail-it@web-xpress.com> writes:

Robert> If you are an HTML programmer [...]

What in the world is an HTML *programmer*?  HTML is not a programming
language.  It is not turing complete.  It does not have decision and
iteration.

And what does this message have to do with Perl?  Very Little.

print "Just another Perl hacker," # but not what the media calls "hacker!" :-)
## legal fund: $20,495.69 collected, $182,159.85 spent; just 503 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: 16 Apr 1997 13:35:11 GMT
From: zpalastair@unl.ac.uk (ALASTAIR AITKEN CLMS)
Subject: Re: Match ?
Message-Id: <5j2kif$fga@epsilon.qmw.ac.uk>

In article <334bea36.5758254@newshub.ccs.yorku.ca>, please_do_not@email.me (sam) writes:
>On Thu, 03 Apr 1997 02:18:02 GMT, soccer@microserve.net (Geoffrey
>Hebert) wrote:
>
>>O.K. I should be able to read one of the books on perl and understand
>
>>
>>([^ ]*)   What is this doing?  
>>
>>Thanks
>>
>
>storing the first match in the variable $1

Which is anything really.  [^ ] is a character class of which a space or the
beginning of a line are included.  All lines start somewhere.  The * means 0 or
more occurences.  The () around it all means store in $1.  I tried this on some
lines in a file with plain words (test,test2) surrounded by white space and
other words.  It put everything into the $1 buffer (clearing it each time a
new line was found).

um .. what was the context?

Alastair.


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

Date: 16 Apr 1997 14:36:52 GMT
From: mike@stok.co.uk (Mike Stok)
Subject: Re: Match ?
Message-Id: <5j2o64$40j@news-central.tiac.net>

In article <5j2kif$fga@epsilon.qmw.ac.uk>,
ALASTAIR AITKEN CLMS <zpalastair@unl.ac.uk> wrote:

>Which is anything really.  [^ ] is a character class of which a space or the
>beginning of a line are included.  All lines start somewhere.  The * means 0 or
>more occurences.  The () around it all means store in $1.  I tried this on some
>lines in a file with plain words (test,test2) surrounded by white space and
>other words.  It put everything into the $1 buffer (clearing it each time a
>new line was found).

Please, no!  [^ ] is a chracter class which matches any character except a
space, the ^ in a character class is different from the ^ in another part
of a regex (which is different from the ^ operator ;-)

The If you were matching the beginning of a line or a space you might use
(^| ) as the beginning of a line is a position rather than a character.

Hope this helps,

Mike

-- 
mike@stok.co.uk                    |           The "`Stok' disclaimers" apply.
http://www.stok.co.uk/~mike/       |   PGP fingerprint FE 56 4D 7D 42 1A 4A 9C
http://www.tiac.net/users/stok/    |                   65 F3 3F 1D 27 22 B7 41
stok@psa.pencom.com                |      Pencom Systems Administration (work)


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

Date: 16 Apr 1997 14:31:43 GMT
From: dblack@icarus.shu.edu (David Alan Black)
Subject: Re: Perl and recursion
Message-Id: <5j2nsf$mtp@pirate.shu.edu>
Keywords: scope recursion perl

kabe@netcom.com (Amol Kabe) writes:
Hello -



>I seem to be having problems with scope when I try to do a recursive call
>to a perl function.  Could someone please explain why I get the following
>error 

>Use of uninitialized value at ./listaliases line 15.
>Use of uninitialized value at ./listaliases line 15.

>#!/usr/local/bin/perl -w 

>$debug = 3;

>sub check_aliases {
>    my (%aliases, $alias, $members) = @_; 

%aliases is going to soak up all the values in @_, so
nothing will be assigned to $alias or $members.

Either pass a reference to %aliases, or put your non-greedy
variables first:

my ($alias, $members, %aliases) = @_;

(and adjust function calls accordingly)

This may or may not be the only problem in the code -
I short-circuited my scrutiny of it when I saw this :-)

David Black
dblack@icarus.shu.edu


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

Date: 16 Apr 1997 13:43:15 GMT
From: billy@cast.msstate.edu (Billy Chambless)
Subject: Perl Jamm (was: Re: Kudos to Tom Christiansen and problems with OO
Message-Id: <5j2l1j$gmd$1@NNTP.MsState.Edu>

In article <omo0j5.mlu.ln@localhost>, tadmc@flash.net (Tad McClellan) writes:
|> Terrence M. Brannon (brannon@bufo.usc.edu) wrote:
|> : nelson <nmljn@wombat.netsinc.com> writes:

|> : > Any other jazz pianist Perl types out there besides myself?

|> : The only Perl types are scalar, array, and hash. :-)
|> My daughter is a scalar type of pianist.
 
|> She only knows the scales so far...

I used to be a hash-type guitar player.....

Billy "admits he inhaled" Chambless


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

Date: Wed, 16 Apr 1997 10:19:30 -0400
From: Dan Boorstein <danboo@ixl.com>
To: TempStephenByrne@extonpo.bentley.com
Subject: Re: Perl regular expressions - HTML
Message-Id: <3354DFF2.58AEB975@ixl.com>

TempStephenByrne@extonpo.bentley.com wrote:
> 
> I am fairly new to Perl so forgive the simplicity of my question/example.
> 
> I am trying to format some HTML documents that we have so that they will
> be consistent.  Within the documents I am trying to fix the following.
> 
> We have 3 cases:
> 
> <dt><A HREF="/forum/index.html"><img src="/products/gif/greenb.gif"
> alt="*" border=0>The FORUM</A>
> 
> <dt><A HREF="/forum/"><img src="/products/gif/greenb.gif" alt="*"
> border=0>The FORUM</A>
> 
> <dt><A HREF="/forum">
> 
> Case #1 is OK.
> Case #2 needs a "index.html" appended onto "/forum"
> Case #3 needs a "/" and a "index.html"
> 

s,HREF="/forum/?",HREF="/forum/index.html",ig;

This seems to do the trick. It just says, if an HREF contains
either "/forum" or "/forum/" replace it with "/forum/index.html".

Save times in the logic and requires no string capturing.

Cheers,

Dan Boorstein
danboo@ixl.com


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

Date: Wed, 16 Apr 1997 14:34:01 +0100
From: b.wilkinson@NOSPAM.pindar.co.uk (Bob Wilkinson)
Subject: Re: removing first 2 characters from scalar value.
Message-Id: <b.wilkinson-1604971434010001@ip57-york.pindar.co.uk>

In article <33539A6C.BD0765FE@ixl.com>, danboo@ixl.com wrote:

> Joseph M. Scott wrote:
> > 
> > To the point : is/what there an easy way to remove the first 2
> > characters from a scalar value ( in this case it's just a file name )?
> > I've dug through the Camel book, but I didn't find anything that would
> > accomplish this.  If I over looked please feel free to list a page
> > number ( and I will have to seek the forgiveness of Larry, Tom, and
> > Randal :-) ).
> > 
> >         -=joseph
> >                 jmscott@ainet.com=-
> 
> 
> I would suggest looking up the 'substr' function on page 227
> of the new Camel. 
> 
> Dan Boorstein
> danboo@ixl.com

Or else :

$name =~ s/^..//;

Bob

-- 
I have become death, destroyer of the worlds.


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

Date: 15 Apr 1997 13:13:17 GMT
From: bet@network.rahul.net (Bennett Todd)
Subject: Re: sorting a *file* (yeah, I know, it's a mainframe concept)
Message-Id: <slrn5l6vnd.bep.bet@waltz.rahul.net>

Two tips. First, consider the amount of data you are gonna be sorting. Perl
has algorithms and data structures that can make for fast, flexible,
easy-to-maintain sorting modules as long as the amount of data is much less
than the amount of available real memory. As soon as the amount of data grows
to make you start paging, you have to use external files, and at that point
the Unix sort(1) program is the way to go. So if you expect to grow to large
amounts of data within the life of this program, go ahead and start with
sort(1) now.

Second, if you are sure the amounts of data are always going to be much
smaller than available real memory, then check out tchrist's tutorial on
sorting, available from either of

	<URL:http://perl.org/CPAN/doc/FMTEYEWTK/sort.html>
	<URL:http://perl.com/CPAN/doc/FMTEYEWTK/sort.html>

-Bennett


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

Date: 16 Apr 1997 13:41:30 GMT
From: Tom Christiansen <tchrist@mox.perl.com>
Subject: Re: Two Perl Language Questions
Message-Id: <5j2kua$9si$1@csnews.cs.colorado.edu>

 [courtesy cc of this posting sent to cited author via email]

In comp.lang.perl.misc, 
    plm@pcug.org.au (Paul Matthews) writes:
:any 'offical' plans to include [recursive matching] in some future
:version of the language?  

No.  Patches accepted, however.:-)
:
:Any thoughts on whether [in] would be a worthy inclusion in
:the language?

In general, "in" is for people who haven't read the FAQ. :-(
No really, there are better ways to do it -- hashes.

Q:  How can I tell whether an array contains a certain element?

A:  There are several ways to approach this. If you are going to
    make this query many times and the values are arbitrary strings,
    the fastest way is probably to invert the original array and
    keep an associative array lying about whose keys are the first
    array's values.

	@blues = qw/azure cerulean teal turquoise lapis-lazuli/;
	undef %is_blue;
	for (@blues) { $is_blue{$_} = 1 }

    Now you can check whether $is_blue{$some_color}. It might have
    been a good idea to keep the blues all in a hash in the first
    place.

    If the values are all small integers, you could use a simple
    indexed array. This kind of an array will take up less space:

	@primes = (2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31);
	undef @is_tiny_prime;
	for (@primes) { $is_tiny_prime[$_] = 1; }

    Now you check whether $is_tiny_prime[$some_number].

    If the values in question are integers instead of strings,
    you can save quite a lot of space by using bit strings instead:

	@articles = ( 1..10, 150..2000, 2017 );
	undef $read;
	grep (vec($read,$_,1) = 1, @articles);

    Now check whether `vec($read,$n,1)' is true for some `$n'.

    Please do not use

	$is_there = grep $_ eq $whatever, @array;

    or worse yet

	$is_there = grep /$whatever/, @array;

    These are slow (checks every element even if the first matches),
    inefficient (same reason), and potentially buggy (what if there
    are regexp characters in $whatever?).

--tom
-- 
	Tom Christiansen	tchrist@jhereg.perl.com


    "Help save the world!"              --Larry Wall in README


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

Date: Wed, 16 Apr 1997 15:38:50 +0100
From: Douglas Seay <seay@absyss.fr>
To: Paul Matthews <plm@pcug.org.au>
Subject: Re: Two Perl Language Questions
Message-Id: <3354E47A.4D87@absyss.fr>

Paul Matthews wrote:
> 
> G'Day,
> 
> In the artical entitled 'Irregual Expressions', Tom Christiansen
> outlines how it would be nice to have a recursive matching with
> nesting.  The example he gives is :
> 
>    /\b(?{begin)\b.*\b(?}end)\b/i
> 
> to match begin...end blocks.  Being in a position where this
> form of pattern matching would be nice, is there any 'offical'
> plans to include this in some future version of the language?
> Is so when?

I haven't heard of any, but since I don't keep up with the latest and
greatest, "they" might be doing it even as we speak.  But I really doubt
it because what you are asking for is not "regular", it is something
from the context-free bag of tricks.  I don't think that Perl needs to
add this as part of the base language.  There is a version of byacc that
produces Perl output.  For me, this is "the best possible world" in that
it lets me use Perl for scanning, yacc for parsing, and it doesn't give
perl all the overhead when I'm not using it.  I don't remember where I
got byacc, but a few minutes with a good search engine ought to find it
for you.


> Having done some work lately in Delphi, I have grown to
> appreciate it is 'in' keyword.  An example (from memory) is
> 
>    if var in ['a','b','c'] then
>    begin
>      :
>    end
> 
> I think you can see how it works.  Although the same
> thing in perl with 'grep' this could look nicer
> 
>    if( $var in @array )
>    {
>      :
>    }
> 
> Any thoughts on whether this would be a worthy inclusion in
> the language?

It doesn't add any power to the language, but it would be convienent. 
Its main advantage would be to speed things up a bit by doing work at a
lower level.  Normally I just avoid using the @array and instead use
%array unless I care about the order of elements.


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

Date: 16 Apr 1997 13:52:45 GMT
From: heller@nacs.net (Jettero Heller)
Subject: Re: Unix and ease of use  (WAS: Who makes more ...)
Message-Id: <5j2ljd$q0f@tracy.nacs.net>

Tim Behrendsen (tim@a-sis.com) wrote:
  [in reference to pkzip over tar+gzip]
: Or how about self-extracting archives?

This concept is utterly useless in un*x. The fact that you bring it
up indicates that you aren't completely clear on the concept behind
un*x.

** Heller

-- 
                 http://www.nacs.net/~heller/funny
Can you imagine having an implant so the government can track you anywhere
you go? It's coming and we're bringing it to you, AT&T.
OK, not AT&T but: http://www.acsp.uic.edu/TechNews/9605002.htm



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

Date: Wed, 16 Apr 1997 07:01:08 -0600
From: nospam@minivend.com
Subject: Re: Unix and ease of use (WAS: Who makes more ...)
Message-Id: <861191605.10566@dejanews.com>

Tim Behrendsen (tim@a-sis.com) wrote:
>
> "Socialism did not collapse because the system didn't work!  It
> collapsed because the people within it didn't work within the system
> to make it successful!"
>
> You *do* realize that this is the whole point, don't you?  Socialism
> inherently fails because it is diametrically opposed to human
> psychology.  Socialists live in a world of beautiful theory.  "Just
> imagine if everyone could work together in love and harmony, instead
> of all this eeevil competition!"
>
>
>     Imagine all the people, paying their own way...
>     You may say, I'm a dreamer,
>     but I'm not the only one...

Bumper sticker:

	"Forget about world peace, visualize using your turn signal."

--
Mike Heins
mikeh at minivend dot com

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


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

Date: Wed, 16 Apr 1997 14:59:20 +0100
From: Sascha <ss@ee.ed.ac.uk>
Subject: WANTED: perl guru ;-)
Message-Id: <5j2m5a$k8g@scotsman.ed.ac.uk>

This is a multi-part message in MIME format.

--------------74C218E54E58
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi there!

I have a perl 5 script which I would like to run as a cgi.
Unfortunately my system only supports perl 4 so I was wondering if
someone could be so kind to see whether the script can be rewritten in
perl 4 or not.

(I know as much of perl as my grandma of computers ;-(


Thanks a lot a lot a lot for any help ;-)


sascha
(please also reply to ss@ee.ed.ac.uk - thanks)


Here the script:

--------------74C218E54E58
Content-Type: application/x-perl; name="MailSearch.pl"
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="MailSearch.pl"

IyEvdXNyL2xvY2FsL2Jpbi9wZXJsCiRDb250cm9sQWRkcmVzcyA9ICJsaXN0cHJvY1xAbGlz
dHMuYWN1c2QuZWR1IjsKJFRlc3RpbmcgPSAiT2ZmIjsKJE1heERpc3BsYXkgPSA0OwokU2Vh
cmNoUGFnZSA9ICRFTlZ7J0hUVFBfUkVGRVJFUid9OwokVGl0bGVBbGlnbiA9ICJjZW50ZXIi
OwoKI1NlbmQgdGhlIEhUVFAgSGVhZGVycwpwcmludCAiQ29udGVudC10eXBlOiB0ZXh0L2h0
bWxcblxuIjsKCiNHZXQgdGhlIGZvcm0gZGF0YQpyZWFkKFNURElOLCAkYnVmZmVyLCAkRU5W
eydDT05URU5UX0xFTkdUSCd9KTsKCiNHZXQgdGhlIHZhbHVlcyBmb3IgZWFjaCBmb3JtIGl0
ZW0KQHBhaXJzID0gc3BsaXQoLyYvLCAkYnVmZmVyKTsKZm9yZWFjaCAkcGFpciAoQHBhaXJz
KQp7CgkoJG5hbWUsICR2YWx1ZSkgPSBzcGxpdCgvPS8sICRwYWlyKTsKCSNEZS1IdG1saWZ5
ICVzeW1ib2xzIGFuZCBzcGFjZXMKCSR2YWx1ZSA9fiB0ci8rLyAvOwoJJHZhbHVlID1+IHMv
JShbYS1mQS1GMC05XVthLWZBLUYwLTldKS9wYWNrKCJDIiwgaGV4KCQxKSkvZWc7CglpZiAo
JG5hbWUgPX4gL293bmVyL2kpIHsKCQkkT3duZXIgPSAkdmFsdWU7Cgl9IGVsc2lmICgkbmFt
ZSA9fiAvT3duZXJOYW1lL2kpIHsKCQkkT3duZXJOYW1lID0gJHZhbHVlOwoJfSBlbHNpZiAo
JG5hbWUgPX4gL0hvbWVQYWdlL2kpIHsKCQkkSG9tZVBhZ2UgPSAkdmFsdWU7Cgl9IGVsc2lm
ICgkbmFtZSA9fiAvU2VhcmNoUGFnZS9pKSB7CgkJJFNlYXJjaFBhZ2UgPSAkdmFsdWU7Cgl9
IGVsc2lmICgkbmFtZSA9fiAvTGlzdEJhc2UvaSkgewoJCWlmICgkdmFsdWUgPX4gL1wvJC8p
IHsKCQkJY2hvcCgkdmFsdWUpOwoJCX0KCQlpZiAoJHZhbHVlID1+IC9eKFx+W15cL10qKSgu
KikkLykgewoJCQkkQmFzZVBhdGggPSBnbG9iKCQxIC4gKCRQdWJsaWNIVE1MIG5lICJvZmYi
ID8gIi9wdWJsaWNfaHRtbCIgOiAiIikgLiAkMik7CgkJfSBlbHNlIHsKCQkJJEJhc2VQYXRo
ID0gZ2xvYigkdmFsdWUpOwoJCX0KCQlwcmludCAiU2V0dGluZyBCYXNlIHBhdGggdG8gJEJh
c2VQYXRoPGJyPlxuIiBpZiAmVGVzdGluZzsKCQlATGlzdEJhc2VzWyQjTGlzdEJhc2VzKzFd
ID0gJEJhc2VQYXRoOwoJCSRVUkxzeyRCYXNlUGF0aH0gPSAkdmFsdWU7Cgl9IGVsc2lmICgk
bmFtZSA9fiAvTGlzdEFkZHJlc3MvaSkgewoJCSRMaXN0QWRkcmVzcyA9ICR2YWx1ZTsKCQlp
ZiAoJHZhbHVlID1+IC9eKFteQF0qKUAuKiQvKSB7CgkJCSRMaXN0TmFtZSA9IHVjKCQxKSBp
ZiAhICRMaXN0TmFtZTsKCQl9Cgl9IGVsc2lmICgkbmFtZSA9fiAvTGlzdE5hbWUvaSkgewoJ
CSRMaXN0TmFtZSA9ICR2YWx1ZTsKCX0gZWxzaWYgKCRuYW1lID1+IC9MaXN0RGVzY3JpcHRp
b24vaSkgewoJCSRMaXN0RGVzY3JpcHRpb24gPSAkdmFsdWU7Cgl9IGVsc2lmICgkbmFtZSA9
fiAvQ29udHJvbEFkZHJlc3MvaSkgewoJCSRDb250cm9sQWRkcmVzcyA9ICR2YWx1ZTsKCX0g
ZWxzaWYgKCRuYW1lID1+IC9NYXhEaXNwbGF5L2kpIHsKCQkkTWF4RGlzcGxheSA9ICR2YWx1
ZTsKCX0gZWxzaWYgKCRuYW1lID1+IC9UZXJtL2kpIHsKCQkkU2VhcmNoVGVybSA9ICR2YWx1
ZTsKCX0gZWxzaWYgKCRuYW1lID1+IC9UaXRsZUFsaWdubWVudC9pKSB7CgkJJFRpdGxlQWxp
Z24gPSAkdmFsdWU7Cgl9IGVsc2lmICgkbmFtZSA9fiAvcHVibGljaHRtbC9pKSB7CgkJJFB1
YmxpY0hUTUw9JHZhbHVlOwoJfSBlbHNpZiAoJG5hbWUgPX4gL1Rlc3RpbmcvaSkgewoJCSRU
ZXN0aW5nID0gJHZhbHVlOwoJfSBlbHNlIHsKCQkkRk9STXskbmFtZX0gPSAkdmFsdWU7Cgl9
CgoJI1doaWxlIHRlc3RpbmcsIHByaW50IHRoZSB2YWx1ZSBvZiB0aGUgdmFyaWFibGVzIGFz
IHdlIGdldCB0aGVtLgoJcHJpbnQgIlNldHRpbmcgJG5hbWUgdG8gJHZhbHVlPGJyPlxuIiBp
ZiAmVGVzdGluZzsKfQoKI1NlbmQgdGhlIEhUTUwgSGVhZGVycwpwcmludCAiPEhlYWQ+IjsK
cHJpbnQgIjxUaXRsZT4iIC4gKCRMaXN0TmFtZSA/ICRMaXN0TmFtZSA6ICJNYWlsaW5nIExp
c3QiKSAuICIgU2VhcmNoIFJlc3VsdHM8L1RpdGxlPiI7CnByaW50ICI8L0hlYWQ+XG4iOwoK
I1NlbmQgdGhlIEhUTUwgQm9keQpwcmludCAiPEJvZHk+XG4iOwpwcmludCAiPEgxIGFsaWdu
PSRUaXRsZUFsaWduPiRMaXN0TmFtZTwvaDE+XG4iIGlmICRMaXN0TmFtZTsKcHJpbnQgIjxo
MiBhbGlnbj0kVGl0bGVBbGlnbj4kTGlzdERlc2NyaXB0aW9uPC9oMj5cbiIgaWYgJExpc3RE
ZXNjcmlwdGlvbjsKcHJpbnQgIjxoMyBhbGlnbj0kVGl0bGVBbGlnbj5TZWFyY2ggUmVzdWx0
czwvSDM+XG4iOwoKCiNNYWtlIHN1cmUgdGhhdCB0aGUgaW1wb3J0YW50IGVudHJpZXMgYXJl
IHRoZXJlCiZibGFua19lbnRyeSgibWFpbGluZyBsaXN0IGZvbGRlciB0byBzZWFyY2giKSB1
bmxlc3MgQExpc3RCYXNlczsKJmJsYW5rX2VudHJ5KCJ3b3JkIHRvIHNlYXJjaCBmb3IiKSB1
bmxlc3MgJFNlYXJjaFRlcm07CgpzdHVkeSAkU2VhcmNoVGVybTsKCiNTZW5kIHRoZSByZXN1
bHRzIHRvIHRoZSByZWFkZXIKCmZvcmVhY2ggJExpc3RCYXNlIChATGlzdEJhc2VzKSB7Cglj
aGRpciAkTGlzdEJhc2U7CglwcmludCAiU2VhcmNoaW5nICRMaXN0QmFzZTxicj5cbiIgaWYg
JlRlc3Rpbmc7CgkjZ2V0IHRoZSBkaXJlY3RvcnkgbGlzdGluZwoJb3BlbmRpciBUSEVESVIs
Ii4iOwoJQEZpbGVMaXN0aW5nID0gcmVhZGRpcihUSEVESVIpOwoJY2xvc2VkaXIgVEhFRElS
OwoJZm9yZWFjaCAkVEhFRklMRSAoQEZpbGVMaXN0aW5nKSB7CgkJbmV4dCBpZiAkVEhFRklM
RSAhfiAvXm1zZy4qXC5odG1sJC87CgkJcHJpbnQgIkxvb2tpbmcgaW4gZmlsZSAkVEhFRklM
RTxicj5cbiIgaWYgJlRlc3Rpbmc7CgkJb3BlbiBUSEVGSUxFOwoJCXdoaWxlICg8VEhFRklM
RT4pIHsKCQkJbGFzdCBpZiAvXDxcIS0tWC1Nc2dCb2R5LS1cPi87CgkJCWlmICgvXDxUSVRM
RVw+KC4qKVw8XC9USVRMRVw+L2kpIHsgJFN1YmplY3QgPSAkMTt9CgkJCWlmICgvXDxMSU5L
IFJFVj0ibWFkZSIgSFJFRj0ibWFpbHRvXDooLiopIlw+L2kpIHsgJFBvc3RlciA9ICQxO30K
CQl9CgkJQExpbmVzID0gZ3JlcCgvJFNlYXJjaFRlcm0vaSw8VEhFRklMRT4pOwoJCSRIaXRD
b3VudCA9ICQjTGluZXMgKzE7CgkJY2xvc2UgVEhFRklMRTsKCQlpZiAoJEhpdENvdW50KSB7
CgkJCUBMaW5lcyA9ICZTdHJpcEhUTUwoQExpbmVzKTsKCQkJJEhpdExpc3R7JFRIRUZJTEV9
ID0gJEhpdENvdW50OwoJCQkkUG9zdGVyTGlzdHskVEhFRklMRX0gPSAkUG9zdGVyOwoJCQkk
U3ViamVjdExpc3R7JFRIRUZJTEV9ID0gJFN1YmplY3Q7CgkJCSRNYXggPSAkTWF4RGlzcGxh
eSA8ICQjTGluZXMgPyAkTWF4RGlzcGxheS0xIDogJCNMaW5lczsKCQkJJExpbmVMaXN0eyRU
SEVGSUxFfSA9IGpvaW4oIiIsQExpbmVzWzAuLiRNYXhdKTsKCQl9CgkJdW5kZWYgJEhpdENv
dW50OwoJCXVuZGVmICRQb3N0ZXI7CgkJdW5kZWYgJFN1YmplY3Q7CgkJdW5kZWYgQExpbmVz
OwoJfQoJQFRoZUhpdHMgPSBzb3J0IENvbXBhcmVfSGl0X0NvdW50IGtleXMoJUhpdExpc3Qp
OwoJaWYgKCQjVGhlSGl0cyA+PSAwKSB7CgkJJEhpdENvdW50ID0gJCNUaGVIaXRzKzE7CgkJ
cHJpbnQgIldlIGZvdW5kICRIaXRDb3VudCBwb3N0IiwgJEhpdENvdW50ID4gMSA/ICJzIiA6
ICIiOwoJCXByaW50ICIgaW4gIiwgKCRMaXN0QWRkcmVzcyA/ICI8YSBocmVmPVwibWFpbHRv
OiRMaXN0QWRkcmVzc1wiPiRMaXN0TmFtZTwvYT4iIDogJExpc3ROYW1lKSBpZiAkTGlzdE5h
bWU7CgkJcHJpbnQgIiBtYXRjaGluZyA8ZW0+JFNlYXJjaFRlcm08L2VtPi48cD48b2w+XG4i
OwoJCWZvcmVhY2ggJFRoZUhpdCAoQFRoZUhpdHMpIHsKCQkJcHJpbnQgIjxsaT48YSBocmVm
PVwiLyRVUkxzeyRMaXN0QmFzZX0vJFRoZUhpdFwiPiRTdWJqZWN0TGlzdHskVGhlSGl0fTwv
YT4iOwoJCQlwcmludCAiPHVsPjxsaT4kSGl0TGlzdHskVGhlSGl0fSBtZW50aW9uIiwgJEhp
dExpc3R7JFRoZUhpdH0gPiAxID8gInMiIDogIiIsICIgaW4gdGhlIHRleHQsIGJ5ICRQb3N0
ZXJMaXN0eyRUaGVIaXR9PC91bD5cbiI7CgkJCXByaW50ICI8cHJlPiRMaW5lTGlzdHskVGhl
SGl0fTwvcHJlPlxuIjsKCQl9CgkJcHJpbnQgIjwvb2w+XG4iOwoJfSBlbHNlIHsKCQlwcmlu
dCAiTm8gbWF0Y2hlcyBmb3IgPGVtPiRTZWFyY2hUZXJtPC9lbT4gaW4gPGEgaHJlZj1cIm1h
aWx0bzokTGlzdE5hbWVcIj4kTGlzdE5hbWU8L2E+LlxuIjsKCX0KCXVuZGVmICVIaXRMaXN0
OwoJdW5kZWYgJVBvc3Rlckxpc3Q7Cgl1bmRlZiAlU3ViamVjdExpc3Q7Cgl1bmRlZiAlTGlu
ZUxpc3Q7Cgl1bmRlZiBAVGhlSGl0czsKCXVuZGVmICRIaXRDb3VudDsKfQoKCiNTZW5kIHRo
ZSBFbmQKJnNlbmRfZW5kOwoKCiNBZGRpdGlvbmFsIHN1YnJvdXRpbmVzCnN1YiBibGFua19l
bnRyeQp7CiAgIHByaW50ICI8aDI+WW91IGZvcmdvdCBzb21ldGhpbmcgdHJ1bHkgaW1wb3J0
YW50ITwvaDI+IjsKICAgcHJpbnQgIlxuWW91IGZvcmdvdCB0byBlbnRlciB5b3VyIEBfLiBQ
bGVhc2UgZ28gYmFjayBhbmQgdHJ5IGFnYWluLlxuIjsKICAgJnNlbmRfZW5kOwogICBleGl0
Owp9CgpzdWIgc2VuZF9lbmQKewogICBwcmludCAiPGhyIHdpZHRoPTMzJT4iOwogICBwcmlu
dCAiSWYgeW91IGhhdmUgZnVydGhlciBjb21tZW50cywgcGxlYXNlIGNvbnRhY3QgPGEgaHJl
Zj1cIm1haWx0bzokT3duZXJcIj4iLCAkT3duZXJOYW1lID8gJE93bmVyTmFtZSA6ICRPd25l
ciwgIjwvYT4uIiBpZiAkT3duZXI7CiAgIHByaW50ICI8aHIgd2lkdGg9MzMlPiI7CiAgIHBy
aW50ICI8dWw+IjsKICAgcHJpbnQgIjxsaT5SZXR1cm4gdG8gdGhlIDxhIGhyZWY9XCIkU2Vh
cmNoUGFnZVwiPiIsICRMaXN0TmFtZSA/ICIkTGlzdE5hbWUgIiA6ICIiLCAic2VhcmNoIHBh
Z2U8L2E+LlxuIiBpZiAkU2VhcmNoUGFnZTsKICAgcHJpbnQgIjxsaT5SZXR1cm4gdG8gdGhl
IDxhIGhyZWY9XCIkSG9tZVBhZ2VcIj4iLCAkTGlzdE5hbWUgPyAiJExpc3ROYW1lICIgOiAi
IiwgImhvbWUgcGFnZTwvYT4uXG4iIGlmICRIb21lUGFnZTsKICAgcHJpbnQgIjwvdWw+IjsK
fQoKc3ViIENvbXBhcmVfSGl0X0NvdW50IHsKICAgJEhpdExpc3R7JGJ9IDw9PiAkSGl0TGlz
dHskYX07Cn0KCnN1YiBTdHJpcEhUTUwgewoJZm9yIChAXykgewoJCSRfID1+IHMvPFtePl0q
Pi8vZzsKCX0KCXJldHVybiBAXzsKfQoKc3ViIFRlc3RpbmcgewoJcmV0dXJuICgkVGVzdGlu
ZyA9fiAvT24vaSk7Cn0K
--------------74C218E54E58--



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

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 314
*************************************

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