[19062] in Perl-Users-Digest
Perl-Users Digest, Issue: 1257 Volume: 10
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Fri Jul 6 14:10:35 2001
Date: Fri, 6 Jul 2001 11:10:13 -0700 (PDT)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Message-Id: <994443012-v10-i1257@ruby.oce.orst.edu>
Content-Type: text
Perl-Users Digest Fri, 6 Jul 2001 Volume: 10 Number: 1257
Today's topics:
Randomizing a list <dostein@cisco.com>
Re: Randomizing a list (Eric Bohlman)
Re: Randomizing a list <peb@bms.umist.ac.uk>
Re: Randomizing a list <peb@bms.umist.ac.uk>
Re: Randomizing a list <tschmelter@statesman.com>
Regex problem <andrew@mvt.ie>
Re: Regex problem <andrew@mvt.ie>
Re: Regex problem <ren@tivoli.com>
Regex problem: Multiple matches across Multiple lines <hillr@ugs.com>
Re: Script permissions problem. <pne-news-20010706@newton.digitalspace.net>
timeout for perl / win32 ?? <stefan.geissler@temis-group.com>
Using the hash DB_File uses, after untie it?? <miscellaneousemail@yahoo.com>
Re: Variable <mjcarman@home.com>
Re: Variable <Graham.T.Wood@oracle.com>
Re: web fetching <bart.lateur@skynet.be>
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: Fri, 06 Jul 2001 19:28:18 +0200
From: Doron Stein <dostein@cisco.com>
Subject: Randomizing a list
Message-Id: <3B45F532.79F2D1C4@cisco.com>
Given a list of items.
How do i create a new list with a random order or
the initial list?
Thanks
Doron.
------------------------------
Date: 6 Jul 2001 16:51:36 GMT
From: ebohlman@omsdev.com (Eric Bohlman)
Subject: Re: Randomizing a list
Message-Id: <9i4qao$n6r$1@bob.news.rcn.net>
Doron Stein <dostein@cisco.com> wrote:
> Given a list of items.
> How do i create a new list with a random order or
> the initial list?
See the section "How do I shuffle an array randomly?" in perlfaq4.
------------------------------
Date: Fri, 06 Jul 2001 17:58:39 +0100
From: Paul Boardman <peb@bms.umist.ac.uk>
Subject: Re: Randomizing a list
Message-Id: <3B45EE3F.E0A23968@bms.umist.ac.uk>
Doron Stein wrote:
>
> Given a list of items.
>
> How do i create a new list with a random order or
> the initial list?
#!/usr/bin/perl -w
use strict;
$, = " ";
my @list = qw(1 2 3 4 5 6 7 8 9);
print "before : ", @list, "\n";
for(0..100){
my $rand1 = rand(@list);
my $rand2 = rand(@list);
@list[$rand1, $rand2] = @list[$rand2, $rand1];
}
print "after : ", @list, "\n";
__END__
output :
before : 1 2 3 4 5 6 7 8 9
after : 5 6 3 7 8 9 1 4 2
The number of iterations necessary for a truly randomisation is
debatable. I use 100 here as a proof of principle.
HTH
Paul
------------------------------
Date: Fri, 06 Jul 2001 18:03:03 +0100
From: Paul Boardman <peb@bms.umist.ac.uk>
Subject: Re: Randomizing a list
Message-Id: <3B45EF47.62B015EF@bms.umist.ac.uk>
Paul Boardman wrote:
>
>Snip post>
> The number of iterations necessary for a truly randomisation is
> debatable. I use 100 here as a proof of principle.
>
Ahem. Pardon my English... I meant "for true randomisation". It's
been a long day... who would have thought that English was my first
language?
Sorry.
Paul
------------------------------
Date: Fri, 06 Jul 2001 17:16:56 GMT
From: Tim Schmelter <tschmelter@statesman.com>
Subject: Re: Randomizing a list
Message-Id: <3B45F287.7DF15FD9@statesman.com>
Doron Stein wrote:
> Given a list of items.
>
> How do i create a new list with a random order or
> the initial list?
>
> Thanks
>
> Doron.
Sounds like an FAQ:
perldoc -q random
Read for "How do I shuffle an array randomly?"
--
Tim Schmelter
Public Key available from http://www.keyserver.net
CAD7 2ABB 05A4 2F00 4CAE 7D2F 127C 129A 7173 2951
------------------------------
Date: Fri, 6 Jul 2001 16:23:42 +0100
From: "Andrew" <andrew@mvt.ie>
Subject: Regex problem
Message-Id: <9i4l6e$20q$1@kermit.esat.net>
Hi,
I'm trying to read in binary pgm files, and I've run into a bit of a
problem. The files typically have a header that looks like this;
P5
# Created by Paint Shop Pro 6
71 50
255
<binary data here>
however there's an application we use here that generates headers that look
like this;
P5 #2:c211-1 pa_1117x0558f100 670 325
71
50
255
<binary data here>
In our application's case, the comments are on the first line, and the x and
y dimensions are on two separate lines. I'd like my program to be able to
read in either format of file.
I've managed to read our application's pgm file using this;
#!/usr/bin/perl
use strict;
my $input = $ARGV[0];
open(INPUT,$input) or die "Can't open file $input for input.\n";
binmode(INPUT);
undef $/;
my $file = <INPUT>;
my ($header, $x_size, $y_size, $colour_depth, $data) = $file =~
/^(P5.*\n)(\d+\n)(\d+\n)(\d+\n)(.*)$/;
I know that this works, because at the moment all my program does is write a
new file by concatenating the variables I've gathered and the new file is
exactly the same as the old one. When I try to amend the regex to cope with
the other case using what's below, I get nothing out the other end - the
output files for both types of input are completely blank.
my ($header, $x_size, $y_size, $colour_depth, $data) = $file =~
/^(P5[.*\#.*\n|\n\#.*\n])(\d+[\n|\s])(\d+\n)(\d+\n)(.*)$/;
I'd appreciate any help with this. Especially if I'm going the completely
wrong way about doing what I'm trying to do. One more thing, once I have
the data in the format shown above, I split up the $data string into a 2d
array of the ord() of each character based on its x and y location.
I'm using Active Perl 5.6.1 with Windows NT, in case that's of relevance.
Thanks,
Andrew
------------------------------
Date: Fri, 6 Jul 2001 16:46:38 +0100
From: "Andrew" <andrew@mvt.ie>
Subject: Re: Regex problem
Message-Id: <9i4mh8$2hh$1@kermit.esat.net>
"Andrew" <andrew@mvt.ie> wrote in message
news:9i4l6e$20q$1@kermit.esat.net...
> Hi,
>
> I'm trying to read in binary pgm files, and I've run into a bit of a
> problem. The files typically have a header that looks like this;
>
> P5
> # Created by Paint Shop Pro 6
> 71 50
> 255
> <binary data here>
>
> however there's an application we use here that generates headers that
look
> like this;
>
> P5 #2:c211-1 pa_1117x0558f100 670 325
> 71
> 50
> 255
> <binary data here>
>
> In our application's case, the comments are on the first line, and the x
and
> y dimensions are on two separate lines. I'd like my program to be able to
> read in either format of file.
>
> I've managed to read our application's pgm file using this;
>
> #!/usr/bin/perl
> use strict;
> my $input = $ARGV[0];
> open(INPUT,$input) or die "Can't open file $input for input.\n";
> binmode(INPUT);
> undef $/;
> my $file = <INPUT>;
> my ($header, $x_size, $y_size, $colour_depth, $data) = $file =~
> /^(P5.*\n)(\d+\n)(\d+\n)(\d+\n)(.*)$/;
>
> I know that this works, because at the moment all my program does is write
a
> new file by concatenating the variables I've gathered and the new file is
> exactly the same as the old one. When I try to amend the regex to cope
with
> the other case using what's below, I get nothing out the other end - the
> output files for both types of input are completely blank.
>
> my ($header, $x_size, $y_size, $colour_depth, $data) = $file =~
> /^(P5[.*\#.*\n|\n\#.*\n])(\d+[\n|\s])(\d+\n)(\d+\n)(.*)$/;
>
It's ok - I finally managed to get things to work using this;
my ($header, $x_sz, $y_sz, $col, $data) = $file =~
/^(P5.*\s+\#.*\n)(\d+\s+)(\d+\s+)(\d+\s+)(.*)$/;
I had forgotten that \s also matches \n.
Andrew
------------------------------
Date: 06 Jul 2001 10:43:04 -0500
From: Ren Maddox <ren@tivoli.com>
Subject: Re: Regex problem
Message-Id: <m3wv5mkqrb.fsf@dhcp9-173.support.tivoli.com>
On Fri, 6 Jul 2001, andrew@mvt.ie wrote:
> Hi,
>
> I'm trying to read in binary pgm files, and I've run into a bit of a
> problem. The files typically have a header that looks like this;
>
> P5
> # Created by Paint Shop Pro 6
> 71 50
> 255
> <binary data here>
>
> however there's an application we use here that generates headers
> that look like this;
>
> P5 #2:c211-1 pa_1117x0558f100 670 325
> 71
> 50
> 255
> <binary data here>
[snip]
> my ($header, $x_size, $y_size, $colour_depth, $data) = $file =~
> /^(P5[.*\#.*\n|\n\#.*\n])(\d+[\n|\s])(\d+\n)(\d+\n)(.*)$/;
[...] is for a character class, which isn't what you want here. I
expect you want non-capturing parens: (?:...)
Other points: "#" is not special in a regex (unless the /x modifies
is included), and "\s" includes "\n".
How 'bout:
/^(P5\s+#.*\n)(\d+\s+)(\d+\s+)(\d+\s+)((?s).*)$/
This mostly uses the fact that "\s" matches "\n". Some of those "\s+"
could be "\n", but this regex allows even more variance of the data,
including having all three numbers on the same line.
I presume the binary data could actually contain a byte that happens
to be a newline, so you had better include the newline when matching
the data. That's what the "(?s)" does, though there are several other
ways to do the same thing. Normally, you would just use the "/s"
modifier on the match, but in this case we do not want the ".*" at the
beginning to include newlines. We could just be explicit about that
though:
/^(P5\s+#[^\n]*\n)(\d+\s+)(\d+\s+)(\d+\s+)(.*)$/s
--
Ren Maddox
ren@tivoli.com
------------------------------
Date: Fri, 06 Jul 2001 10:50:04 -0700
From: Ron Hill <hillr@ugs.com>
Subject: Regex problem: Multiple matches across Multiple lines
Message-Id: <3B45FA4C.BE3851F9@ugs.com>
Hello All,
I am trying to parse a document and am running into difficulty ( see
test script below my post) If this script is run as is, it takes a long
time to return and $11 var is empty. However if I comment out the lines
(.*\n) and SYMPTOM after the HARDWARE line the script returns without a
long wait and I have what I need in the vars $1 - $10.
my question is How can I get the information between HARDWARE and
SYMPTOM as var $11? And also continue on with the other information (
var $12 contains the information between SYMPTOM and SOLUTION?
Can anyone help me find out what I am doing wrong?
Thanks
Ron
undef $/;
while (<DATA>) {
/
#start of record
PRODUCT: (.*)\n
SUBJECT:(.*)\n #get subject
\s* #skip the new line
SUBMITTED\s+BY: (.*)?\s* SUBMITTED\s+DATE:(.*)\n # get name and date
IR\s*\#:(.*)?\s* DOCUMENT\s+ID:(.*)\n # get IR and DOCUMENT ID
PLATFORM:(.*)?\s* OPERATING\s+SYSTEM:(.*)\n # get Platfoem and
operating system
OS\s+VERSION:(.*)?\s+ UG\sVERSION:(.*) # get OS and UG version
\s+ # skip new line
=+ # skip the =
\s+ # skip new line
HARDWARE.*
(.*\n) # get everything between hardware and symptom
SYMPTOM.*
#(.*)
#SOLUTION.*
#(.*)
#REFERENCE.*
#(.*)
/x;
print $11;
# I want $1 - $14 to put in a hash
}
__DATA__
PRODUCT: UG
SUBJECT: How to configure and check a modem on HP 9000 workstations
SUBMITTED BY: STEVE RICHES SUBMITTED DATE: 09/20/94
IR #: 0347378 DOCUMENT ID: 001-0347378
PLATFORM: HPRISC OPERATING SYSTEM: HP-UX
OS VERSION: 9.01 UG VERSION: V10.2
================================================================================
HARDWARE/SOFTWARE CONFIGURATION
-------------------------------
HP 9000 series 300/400/700/800 workstations,
HP-UX V9.x
SYMPTOM/PROBLEM
---------------
How to set up a modem for use on a HP 9000 workstation.
This procedure describes how to set up a Hayes-compatible modem
on 9000/300, 9000/400, 9000/800 and 9000/700 computers.
SOLUTION/WORKAROUND
-------------------
1) Verify that the modem is Hayes-compatible; check the owner's manual.
2) Verify that the proper cable is being used to connect modem to the
RS-232 port on the workstation. Check the type of serial port on
the workstation; then check the corresponding cable part number and
pin
connection listed below.
For most HP Series 300 computers:
-----------------------------------
a) 9 pin built-in RS-232 == 98561-61604 (9 to 25 pin pigtail cable)
and 40242M (25 pin straight
through)
b) 25 pin built-in RS-232 or 25 pin 98644A
== 40242M (25 pin straight through)
c) 98642A 4-channel MUX == 98642-66506 (25 to 25 pin cable)
For the HP Series 345/375/380/700 computers:
--------------------------------------------
a) 9 pin built-in RS-232 (98644 card) == 24542M
For the HP Series 400 computers:
--------------------------------
a) 25 pin built-in RS-232 == 40242M (25 pin straight through)
For the HP Series 800 computers:
-------------------------------
== 92219Q cable or 40233A cable
3) Verify or create the correct modem device files:
For the HP Series 300/400 computers:
------------------------------------
1) hardwired device file (ttySC):
major number = 1; minor number = 0xSC0004
2) callin device file (ttydSC):
major number = 1, minor number =0xSC0000
3) callout device files (culSC and cuaSC):
major number =1, minor number = 0xSC0001
NOTE: SC denotes the select code of the interface
For example, the commands to create the device files
for the interface, select code of 9, are:
/etc/mknod /dev/ttySC c 1 0x090004 (hardwired)
/etc/mknod /dev/ttydSC c 1 0x090000 (callin)
/etc/mknod /dev/culSC c 1 0x090001 (callout)
/etc/mknod /dev/cuaSC c 1 0x090001 (callout)
For the HP Series 800 computers (825, 835, 840, 845, 850, 855):
---------------------------------------------------------------
1) hardwired device file (ttyXpY)
2) callin device file (ttydXpY)
3) callout device files (culXpY and cuaXpY)
NOTE: X denotes the MUX 'LU' number
Y denotes the port number
Use '/etc/lssf' to verify the device files.
To create the device files, use the 'mksf' command:
/etc/mksf -d mux0 -l X -p Y -h /dev/ttyXpY
(hardwired)
/etc/mksf -d mux0 -l X -p Y -i /dev/ttydXpY (callin)
/etc/mksf -d mux0 -l X -p Y -o /dev/culXpY
(callout)
/etc/mksf -d mux0 -l X -p Y -h /dev/cuaXpY
(callout)
For the HP 9000 Series 800 computers (808, 822, 832, 842, 852)
--------------------------------------------------------------
1) hardwired device file (ttyXpY)
2) callin device file (ttydXpY)
3) callout device files (culXpY and cuaXpY)
NOTE: X denotes the MUX 'LU' number
Y denotes the port number
Use '/etc/lssf' to verify the device files
To create the device files, use the 'mksf' command:
/etc/mksf -d mux2 -l X -p Y -h /dev/ttyXpY (hardwired)
/etc/mksf -d mux2 -l X -p Y -i /dev/ttydXpY (callin)
/etc/mksf -d mux2 -l X -p Y -o /dev/culXpY (callout)
/etc/mksf -d mux2 -l X -p Y -h /dev/cuaXpY (callout)
For the HP 9000 Series 800 computers (nova, 8x7 & all newer 800 Series)
-----------------------------------------------------------------------
1) hardwired device file (ttyXpY)
2) callin device file (ttydXpY)
3) callout device files (culXpY and cuaXpY)
NOTE: X denotes the MUX 'LU' number
Y denotes the port number
Use '/etc/lssf' to verify the device files.
To create the device files, use the 'mksf' command:
/etc/mksf -d mux2 -l X -p Y -h /dev/ttyXpY (hardwired)
/etc/mksf -d mux2 -l X -p Y -i /dev/ttydXpY (callin)
/etc/mksf -d mux2 -l X -p Y -o /dev/culXpY (callout)
/etc/mksf -d mux2 -l X -p Y -h /dev/cuaXpY (callout)
For the HP 9000 Series 700 computers
------------------------------------
1) hardwired device file (ttyXX):
major = 1; minor = 0xS0F004
2) callin device file (ttydXX):
major = 1; minor = 0xS0F000
3) callout device files (culXX and cuaXX):
major = 1; minor = 0xS0F001
NOTE: S denotes the system bus module number;
F denotes the function number
For example, using the 'mknod' command and RS-232 port A:
/etc/mknod /dev/ttySC c 1 0x204004
/etc/mknod /dev/ttydSC c 1 0x204000
/etc/mknod /dev/culSC c 1 0x204001
/etc/mknod /dev/cuaSC c 1 0x204004
For RS-232 port B, 0x20400? is replaced with 0x20500?
^ ^
4) Next, with the modem disconnected from the port, place a 'getty -h'
process on the port by adding an entry to the "/etc/inittab" file.
For example:
a0:2:respawn:/etc/getty -h ttydXpY 2400M
After saving the changes to "/etc/inittab" file, execute the
"init q" command. Verify that a 'getty' is running on the port and
that it is in a pending state (there should be a '?' in the 'tty'
field).
Verify the 'getty' process exists and the 'getty' process state by
the
following command:
ps -ef | grep ttydXpY
If the getty is not in a pending state, check the hardware.
NOTE: If you are running in the VUE environment, you are
running in 'init state 3'. Therefore, the following entry in
"/etc/inittab" is needed:
a0:234:respawn:/etc/getty -h ttydXpY 2400M
5) These are two examples of entries in the "/etc/gettydefs" file for
modems:
2400M # B2400 HUPCL SANE CS8 ISTRIP IXANY TAB3
# B2400 HUPCL SANE CS8 ISTRIP IXANY TAB3
#login: #9600M
9600M # B9600 HUPCL SANE CS8 ISTRIP IXANY TAB3
# B9600 HUPCL SANE CS8 ISTRIP IXANY TAB3
#login: #2400M
6) With the modem disconnected from the port and powered on, the DTR or
TR
light should be off. When the modem is connected to the port, the
DTR or TR light should come on. The port is setting the DTR or the
TR
state, not the modem. If the DTR or the TR light remains lit all
the
time, this indicates that the modem has DTR strapped high and the
setting
should be changed to correct the condition. Check the modem owner's
manual for the procedure to change the strapping.
7) After the modem is connected to the port, enter:
ps -ef | grep ttydXpY
and verify that getty is still in a pending state. If getty has a
port
number in tty field instead of a question mark (?), the modem has
the
carrier detect (CD) signal strapped high. Check the modem owner's
manual for the procedure to change this strapping and correct it.
8) At this point, the modem is ready for 'callin' use.
9) To set modem up for 'callout' usage, add the following three entries
to the "/usr/lib/uucp/Devices" file:
ACU culXpY - 2400 hayes
Direct culXpY - 2400 direct
Direct ttyXpY - 2400 direct
10) To test the 'callout' ability, use the following 'cu' command:
cu -s2400 -lttyXpY -m dir
You should get a message indicating that you are connected.
Entering "AT" and a carriage return (CR) should return 'OK'.
If the 'OK' message is not given, it may be due to the modem
having 'echo' turned off. Enter:
ATDT<phone number>
and listen to the modem to check that it dials the number.
If the modem does not dial the number, have the modem hardware
checked for defects or hardware failures.
11) The modem is now ready for 'callout' using:
cu -s2400 <phone number>
REFERENCES/NOTES
----------------
================================================================================
COPYRIGHT (C) by Unigraphics Solutions, Inc.
ALL RIGHTS RESERVED. No distribution except provided under contract
-- End of document --
------------------------------
Date: Fri, 06 Jul 2001 18:25:53 +0200
From: Philip Newton <pne-news-20010706@newton.digitalspace.net>
Subject: Re: Script permissions problem.
Message-Id: <makbktk2b6oe8o6h6akgeseueq82p9t3a7@4ax.com>
On Thu, 05 Jul 2001 13:31:46 +0100, Paul Boardman <peb@bms.umist.ac.uk>
wrote:
> I can't see clp in the list of newsgroups from my newsgroup server & I
> can't find it on groups.google.com either. Is it an elusive & secretive
> place? Or, perhaps, does it not exist?
It should not exist. It exists on badly managed newsservers; for
example, those that ignored the rmgroup when clp split up into clpmisc
and whatever else it was (did .modules come first or .tk?), or those
that automatically create any group that someone posts to. Just like
there are newsservers that have news.hipcrime.*; that doesn't mean that
those groups "exist".
Cheers,
Philip
--
Philip Newton <nospam.newton@gmx.li>
That really is my address; no need to remove anything to reply.
If you're not part of the solution, you're part of the precipitate.
------------------------------
Date: Fri, 6 Jul 2001 15:34:01 +0200
From: "Stefan Geißler" <stefan.geissler@temis-group.com>
Subject: timeout for perl / win32 ??
Message-Id: <9i4e6t$mvt1@news-1.bank.dresdner.net>
Hi all,
does anyone know how to set a timeout for perl on win32 systems?
Say you need to do a system call and if this doesn't return within a
specified time, you
The alarm() call that is mentioned in perl example for Unix does not exist
and I haven't been able to find another solution.
Any help greatly appreciated.
Best,
Stefan Geißler
------------------------------
Date: Fri, 06 Jul 2001 17:23:15 GMT
From: Carlos C. Gonzalez <miscellaneousemail@yahoo.com>
Subject: Using the hash DB_File uses, after untie it??
Message-Id: <MPG.15afa1a23401f8f7989682@news.edmonton.telusplanet.net>
Hi everyone,
I have noticed that after I untie the hash used by DB_File it is no
longer available (becomes undefined).
Say that I want to display the contents of a file to the browser screen
BUT I do not want that file to remain open under DB_File while I display
it. Especially since other users of my script may be accessing the file
for other reasons.
If I untie (close) the file, the hash used to access the file goes away.
If I copy the hash to another hash and display the hash copy will that
work without keeping the file open through the original hash?
I hope my question makes sense.
Thanks for any input on any of this.
--
Carlos
www.internetsuccess.ca
------------------------------
Date: Fri, 06 Jul 2001 08:01:49 -0500
From: Michael Carman <mjcarman@home.com>
Subject: Re: Variable
Message-Id: <3B45B6BD.31AE5EB2@home.com>
Tak wrote:
>
> I am newer for perl.
Then you should know that a full copy of the documentation is part of
every Perl install. It's the first place you should look when you have
questions.
> Could anyone tell me what is the meaning of "my"
I declares a variable to be lexically scoped to the enclosing block or
file.
-mjc
------------------------------
Date: Fri, 06 Jul 2001 16:23:38 +0100
From: Graham Wood <Graham.T.Wood@oracle.com>
Subject: Re: Variable
Message-Id: <3B45D7F9.68FC22FD@oracle.com>
This is a multi-part message in MIME format.
--------------39C6F79CBB7877888444329A
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Tak wrote:
> I am newer for perl. Could anyone tell me what is the meaning of "my"
>
perldoc -f my
my EXPR
my EXPR : ATTRIBUTES
A "my" declares the listed variables to be local (lexically)
to
the enclosing block, file, or "eval". If more than one value
is
listed, the list must be placed in parentheses. See the
section
on "Private Variables via my()" in the perlsub manpage for
details.
perldoc perlsub
is what you type to read the section on "Private Variables via my()"
Graham Wood
--------------39C6F79CBB7877888444329A
Content-Type: text/x-vcard; charset=UTF-8;
name="Graham.T.Wood.vcf"
Content-Transfer-Encoding: 7bit
Content-Description: Card for Graham Wood
Content-Disposition: attachment;
filename="Graham.T.Wood.vcf"
begin:vcard
n:;Graham
x-mozilla-html:FALSE
adr:;;;;;;
version:2.1
email;internet:Graham.T.Wood@oracle.com
fn:Graham Wood
end:vcard
--------------39C6F79CBB7877888444329A--
------------------------------
Date: Fri, 06 Jul 2001 17:30:26 GMT
From: Bart Lateur <bart.lateur@skynet.be>
Subject: Re: web fetching
Message-Id: <c9tbkt0i9njtkh84hvqp7nbo4uh1e7ifju@4ax.com>
Buggs wrote:
>I'd be interested in code
>which tries to achieve that
>in "plain" Perl without using Socket.
Run to the book store and get yourself a copy of Lincoln Stein's book
"Network programming with Perl". All of your questions will be answered
in that book.
It starts by explaining how to use the plain vanilla socket related perl
keywords, then upgrades to IO::Socket, next goes into every detail of
LWP, and he describes all the (common) approaches to writing servers,
with all the pitfalls. A one stop book, with all the answers.
There should be far more books like this one.
--
Bart.
------------------------------
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.
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 1257
***************************************