[16875] in Perl-Users-Digest
Perl-Users Digest, Issue: 4287 Volume: 9
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Mon Sep 11 14:15:46 2000
Date: Mon, 11 Sep 2000 11:15:29 -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: <968696129-v9-i4287@ruby.oce.orst.edu>
Content-Type: text
Perl-Users Digest Mon, 11 Sep 2000 Volume: 9 Number: 4287
Today's topics:
Re: s/// mystery: regexp challenge (Kai Diefenbach)
Re: s/// mystery: regexp challenge (Abigail)
Re: s/// mystery: regexp challenge (Mark-Jason Dominus)
Sys::Syslog problems <jcs@rt.fm>
This *should* be easy, string parsing question drstone@my-deja.com
Re: This *should* be easy, string parsing question cyberlurker@my-deja.com
Re: This *should* be easy, string parsing question <anmcguire@ce.mediaone.net>
Re: This *should* be easy, string parsing question (Peter J Scott)
Re: use strict: why? mexicanmeatballs@my-deja.com
Re: use strict: why? (Craig Berry)
using filehandles in strict mode mgopi@csa.iisc.ernet.in
xml type file parsing help. <rickyfusion@nospamfusionserver.com>
Digest Administrivia (Last modified: 16 Sep 99) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: Mon, 11 Sep 2000 15:49:15 GMT
From: k.diefenbach@tpp24.net (Kai Diefenbach)
Subject: Re: s/// mystery: regexp challenge
Message-Id: <39bcfde6.38518747@news.talknet.de>
Thomas Ruedas schrieb:
>I am trying to write a small LaTeX->HTML converter for a special purpose
>and need to convert a number of LaTeX commands (which all begin with \ )
>to HTML tags. My test set is:
>
>h\"angen est\'a fa\c{c}on 10\% 37\textdegree
>which I want to have converted into:
>hängen está façon 10% 37°
>However, what I get is:
>hängen est\á fa\c{c}on 10\% 37\textdegree
this should do it:
#!/usr/local/bin/perl -w
use Tie::IxHash;
@lines=<DATA>;
tie(%tags,Tie::IxHash);
%tags=(
'\"a' =>'ä',
'\\\'a' =>'á',
'\c{c}' =>'ç',
'\%' =>'%',
'\\textdegree'=>'°');
foreach $item (@lines) {
$item =~ s/\\\n/\n/gx;
$item =~ s/\\\s/ /g;
foreach (keys %tags) {
$tex= quotemeta($_);
$item =~ s/$tex/$tags{$_}/gx;
}
print $item;
}
__END__
h\"angen est\'a fa\c{c}on
10\% 37\textdegree
>------------------------------------------------------------------------
>Thomas Ruedas
>Institute of Meteorology and Geophysics, J.W.Goethe University Frankfurt
>e-mail: ruedas@geophysik.uni-frankfurt.de
>http://www.geophysik.uni-frankfurt.de/~ruedas/
>------------------------------------------------------------------------
greetings from frankfurt
Kai
__
come to the team
kai.diefenbach@tsg-handball.de
http://www.tsg-handball.de
------------------------------
Date: 11 Sep 2000 16:35:35 GMT
From: abigail@foad.org (Abigail)
Subject: Re: s/// mystery: regexp challenge
Message-Id: <slrn8rq2co.b1k.abigail@alexandra.foad.org>
Thomas Ruedas (ruedas@geophysik.uni-frankfurt.de) wrote on MMDLXVIII
September MCMXCIII in <URL:news:39BCF081.E7986D55@geophysik.uni-frankfurt.de>:
""
"" cut______________________________________________
"" #!/usr/local/bin/perl -w
"" use Tie::IxHash;
What is the purpose of the tie here?
"" @lines=<DATA>;
"" tie(%tags,Tie::IxHash);
"" %tags=('\\\"a'=>'ä','\\\'a'=>'á','\\c{c}'=>'ç',
"" '\\%'=>'%','\textdegree'=>'°');
"" foreach (@lines) {
"" $item=$_;
"" $item =~ s/\\\n/\n/gx;
"" $item =~ s/\\\s/ /g;
"" foreach (keys %tags) {
"" $tex=$_;
"" $item =~ s/$tex/$tags{$_}/gx;
The problem here is that $tex contains characters that are interpreted
by the regex engine. Backslash is such a character (and {} are others).
Quotemeta them:
$item =~ s/\Q$tex/$tags{$_}/g;
and lose one of the backslashes in the first key.
"" #$item =~ s/\\\'a/á/ # <- this works for \'a
"" }
"" $_=$item;
"" }
"" foreach (@lines) { print $_; }
"" exit;
"" __END__
"" h\"angen est\'a fa\c{c}on
"" 10\% 37\textdegree
However, you are doing this in a very inefficient way, see the FAQ,
the Perl Cookbook, and Effective Perl Programming why.
#!/opt/perl/bin/perl -w
use strict;
my @tags = ([qr /\\"a/ => 'ä'],
[qr /\\'a/ => 'á'],
[qr /\\c{c}/ => 'ç'],
[qr /\\%/ => '%'],
[qr /\\textdegree/ => '°']);
while (my $line = <DATA>) {
$line =~ s/\\$//;
$line =~ s/\\\s/ /g;
map {$line =~ s/$_->[0]/$_->[1]/g} @tags;
print $line;
}
__END__
h\"angen est\'a fa\c{c}on
10\% 37\textdegree
Abigail
--
map{${+chr}=chr}map{$_=>$_^ord$"}$=+$]..3*$=/2;
print "$J$u$s$t $a$n$o$t$h$e$r $P$e$r$l $H$a$c$k$e$r\n";
------------------------------
Date: Mon, 11 Sep 2000 17:46:28 GMT
From: mjd@plover.com (Mark-Jason Dominus)
Subject: Re: s/// mystery: regexp challenge
Message-Id: <39bd1a74.8d3$160@news.op.net>
In article <39BCF081.E7986D55@geophysik.uni-frankfurt.de>,
Thomas Ruedas <ruedas@geophysik.uni-frankfurt.de> wrote:
>I am trying to write a small LaTeX->HTML converter for a special purpose
>and need to convert a number of LaTeX commands (which all begin with \ )
>to HTML tags. My test set is:
The 'vulcanize' program may already do what you want. If it does too
much, it should be easy to cut out the parts you don't need.
Here it is.
#!/usr/local/bin/perl
# -*- perl -*-
#
# VULCANIZE
#
# $Revision: 0.5 $
#
# Sloppy job of mostly converting LaTeX documents to HTML
#
# Coyright 1994 M-J. Dominus and the Trustees of the University of
# Pennsylvania. All rights reserved.
#
# M-J Dominus (mjd@saul.cis.upenn.edu)
#
# Please see man page and manifesto at
# http://www.cis.upenn.edu/~mjd/vulcanize.html.
$revno='$Revision: 0.5 $';
$revno =~ s/^.*:\s*//;
$revno =~ s/\$\s*$//;
$/='\x00'; # Slurp in entire file
$_ = <>;
s/^(\%[^\n]*\n)+//g; # Discard comments: what's on a line
s/([^\\])\%[^\n]*\n/\1/g; # after a line-beginning or non\'d %.
# Insert paragraph marks
s/\n\n+/\<P\>\n\n/g;
# Handle lists
s/\\begin\{enumerate\}/\<OL\>/g;
s/\\end\{enumerate\}/\<\/OL\>/g;
s/\\begin\{itemize\}/\<UL\>/g;
s/\\end\{itemize\}/\<\/UL\>/g;
s/\\begin\{description\}/\<DL\>/g;
s/\\end\{description\}/\<\/DL\>/g;
# items without []'s for <li>s; otherwise as <dt>[]<dd>
s/\\item\s*\[([^\]]*)\]/\<dt\>\1\<dd\>/g;
s/\\item/\<LI\>/g;
# Handle quotes
s/\\begin\{quotation\}/\<blockquote\>/g;
s/\\end\{quotation\}/\<\/blockquote\>/g;
s/\\begin\{quote\}/\<blockquote\>/g;
s/\\end\{quote\}/\<\/blockquote\>/g;
# Handle preformatted text
s/\\begin\{verbatim\}/\<pre\>/g;
s/\\end\{verbatim\}/\<\/pre\>/g;
s/\\begin\{tabbing\}/\<pre\>/g;
s/\\end\{tabbing\}/\<\/pre\>/g;
s/\\begin\{verse\}/\<pre\>/g;
s/\\end\{verse\}/\<\/pre\>/g;
# Handle entities
s/\\\&/&\;/g;
s/\\\</\<\;/g;
s/\\\>/\>\;/g;
# Real percent signs.
s/\\\%/\%/g;
s/\\\#/\#/g;
# Tex's hard space
s/\\ / /g;
# Accents---add more here as used.
s/\\\'([AEIOUYaeiouy])\s+/\&\1acute\;/g;
s/\\\"([AEIOUaeiouy])\s+/\&\1uml\;/g;
s/\\\`([AEIOUaeiou])\s+/\&\1grave\;/g;
s/\\\~([ANOano])\s+/\&\1tilde\;/g;
s/\\\^([AEIOUaeiou])\s+/\&\1circ\;/g;
s/\\\,([Cc])\s+/\&\1cedil\;/g;
s/\\([aoAO][Ee])\s+/\&\1lig\;/g;
s/\\ss/\ß\;/g;
s/\\aa/\å\;/g;
s/\\AA/\Å\;/g;
s/\\([Oo])\s+/\&\1slash\;/g;
# Miscellany that we can actually handle
s/\\ldots/.../g;
s/\\leq/\<=/g;
s/\\geq/\>=/g;
# We SHOULD translate these to
# (see http://info.cern.ch/hypertext/WWW/MarkUp/Entities.html)
# but guess what?
# Mosaic doesn't understand  , so we won't. Duhhh.
s/([^\\])\~/\1 /g; # Remove twiddle only when preceded by other
s/^\~/ /g; # than \ or when alone at beginning of line
s/\\\\\s*$/<br>/g; # \\ at end of line -> <br>
s/\"/\"/g; # " -> "
# handle formatting requests
s/\\verb\+([^+]*)\+/\<tt\>\1\<\/tt\>/g; # Doesn't work unless \verb+...+
s/\s*\{\\em\s*([^}]*)\}/ <em>\1<\/em>/g;
s/\s*\{\\bf\s*([^}]*)\}/ <b>\1<\/b>/g;
s/\s*\{\\sc\s*([^}]*)\}/ \U\1\E/g;
s/\s*\{\\it\s*([^}]*)\}/ <i>\1<\/i>/g;
s/\s*\{\\tt\s*([^}]*)\}/ <tt>\1<\/tt>/g;
s/\\begin\{em\}/\<em\>/g;
s/\\end\{em\}/\<\/em\>/g;
s/\\begin\{bf\}/\<b\>/g;
s/\\end\{bf\}/\<\/b\>/g;
s/\\begin\{it\}/\<i\>/g;
s/\\end\{it\}/\<\/i\>/g;
s/\\begin\{tt\}/\<tt\>/g;
s/\\end\{tt\}/\<\tt\>/g;
# Discard italic correction `\/'
s/\\\///g;
# Discard \noindent (it's hopeless)
s/\\noindent//g;
# Section headers
s/\\section\s*\{([^}]*)\}/<h1>$1<\/h1>/g;
s/\\subsection\s*\{([^}]*)\}/<h2>$1<\/h2>/g;
s/\\subsubsection\s*\{([^}]*)\}/<h3>$1<\/h3>/g;
# Remove <P> when it follows some other tag and is thereofre unnecessary
# e.g., </h2><P> --> </h2>
# This doesn't work well---fix it.
s/\>\s*\<[Pp]\>/\>/g;
s/\\index\{([^}]*)\}/\<a name\=\"ind-$1\"\>/g;
# Labels and refs
$count = 1;
while (/\\label\W\s*\{/) {
s/\\label\W\s*\{([^}]*)\}/<a name\=\"ref-$1\"\>/;
$labels{$1} = $count;
$count += 1;
}
s/\\ref\{([^}]*)\}/<a href\=\"#ref-$1\"\>$labels{$1}\<\/a\>/g;
# Things we'll never add:
# centering, subscripts, superscripts, other math formulas.
# fonts, parshape
# everything else.
$address=$ENV{'USER'} . '@' . `hostname`;
chop $address;
$header = "<title>TITLE GOES HERE</title>\n" .
"<!-- Generated by Vulcanize v$revno. >\n<!-- Whom to blame: M-J. Dominus, mjd@saul.cis.upenn.edu>\n" .
"<H1>NEW PAGE</H1><p>\n" ;
$trailer = "<P><HR>\<p\>\n\<ADDRESS\>\n$address\n\<\/ADDRESS\>\n";
# $trailer = "\<inc srv \"\/\~mjd\/lec\-notes\/lecnotes\-trailer\.html\"\>\b";
$footnotenumber=1;
$footnotes='';
while (/\\footnote/) {
s/\\footnote\{([^}]*)\}/ \<a href\=\"#footnote-$footnotenumber\"\>\($footnotenumber\) \<\/a\>/;
$footnotes .= "\<a name\=\"footnote-$footnotenumber\"\>\<li\> $1\<\/a\>\n";
$footnotenumber++;
}
if ($footnotes) {
$footnotes = "\<hr\>\n\<h1\>Footnotes\<\/h1\>\<ol\>\n" . $footnotes . "\n\<\/ol\>\n";
}
# get rid of redundant curly braces;
# make curly braces we want, normal
# s/([^\\])[{}]/$1/g;
# s/\\([{}])/$1/g;
# Prepend title and header, append address.
$_ = $header . $_ . $footnotes . $trailer;
# Urp.
print $_;
__END__
------------------------------
Date: Mon, 11 Sep 2000 17:36:53 GMT
From: joshua stein <jcs@rt.fm>
Subject: Sys::Syslog problems
Message-Id: <VK8v5.212$%l.13659@news-east.usenetserver.com>
using perl 5.6.0 and Sys::Syslog, I am unable to make it log anything to
syslog. a simple program that I'm using for testing is as follows:
use Sys::Syslog;
openlog("test", "ndelay,pid");
syslog("authpriv|info", "connection");
closelog();
print "error: $!\n";
'*.*' is being logged to a single file in /etc/syslog.conf. I can run
syslogd in debug mode and still, nothing is logged.
I get the following when I run that, however:
error: Bad file descriptor
I can't figure out why it's doing this. any clues?
--
joshua stein <jcs@rt.fm>
------------------------------
Date: Mon, 11 Sep 2000 16:49:54 GMT
From: drstone@my-deja.com
Subject: This *should* be easy, string parsing question
Message-Id: <8pj2f9$nl1$1@nnrp1.deja.com>
Folks,
I have here one of those things that should be real simple,
but I can't seem to get around it.
I have a script that does some stuff and then returns me a long
string of name value pairs....
something along the lines of:
item=value&item2=value2&item3=value3....
so, I need to parse this and retrieve the
name value pairs.
The data being returned to me is coming from an external script
that I have no control over (I believe it's just sending out the
contents of a scaler as one long string)
Any thoughts on a quick and dirty way to extract using the
& and the = as my conditions?
regards,
-stone
Sent via Deja.com http://www.deja.com/
Before you buy.
------------------------------
Date: Mon, 11 Sep 2000 17:32:43 GMT
From: cyberlurker@my-deja.com
Subject: Re: This *should* be easy, string parsing question
Message-Id: <8pj4vq$r0o$1@nnrp1.deja.com>
$buffer = "item0=value1&item2=value2";
@pairs = split(/\&/,$buffer);
foreach $pair (@pairs)
{
($a,$b)=split(/=/,$pair);
$FORM{$a} = $b;
}
now u have a hash %FORM, in which the "itemname" is the key
and the "itemvalue" is the value...
from the Matt's script archive -- long before cgi.pm
Sent via Deja.com http://www.deja.com/
Before you buy.
------------------------------
Date: Mon, 11 Sep 2000 12:46:56 -0500
From: "Andrew N. McGuire " <anmcguire@ce.mediaone.net>
Subject: Re: This *should* be easy, string parsing question
Message-Id: <Pine.LNX.4.21.0009111242580.20839-100000@hawk.ce.mediaone.net>
On Mon, 11 Sep 2000, drstone@my-deja.com quoth:
> Folks,
> I have here one of those things that should be real simple,
> but I can't seem to get around it.
> I have a script that does some stuff and then returns me a long
> string of name value pairs....
> something along the lines of:
> item=value&item2=value2&item3=value3....
>
> so, I need to parse this and retrieve the
> name value pairs.
> The data being returned to me is coming from an external script
> that I have no control over (I believe it's just sending out the
> contents of a scaler as one long string)
>
> Any thoughts on a quick and dirty way to extract using the
> & and the = as my conditions?
Do you mean like this:
#!/usr/bin/perl
use strict;
use warnings;
my $str = "item=value&item2=value2&item3=value3";
my %table = split /[&=]/, $str;
print map "key: $_ => value: $table{$_}\n" => sort keys %table;
__END__
Of course, that will fail if you have duplicate keys in your
string (but then again, if they are duplicate, they are not
really "keys").
perldoc -f split
anm
--
BEGIN { $\ = $/; $$_ = $_ for qw~ just another perl hacker ~ }
my $J = sub { return \$just }; my $A = sub { return \$another };
my $P = sub { return \$perl }; my $H = sub { return \$hacker };
print map ucfirst() . " " => ${&$J()}, ${&$A()}, ${&$P()}, ${&$H()};
------------------------------
Date: Mon, 11 Sep 2000 18:04:33 GMT
From: peter@PSDT.com (Peter J Scott)
Subject: Re: This *should* be easy, string parsing question
Message-Id: <R89v5.5491$x6.336556@news1.gvcl1.bc.home.com>
In article <8pj2f9$nl1$1@nnrp1.deja.com>,
drstone@my-deja.com writes:
>Folks,
>I have here one of those things that should be real simple,
>but I can't seem to get around it.
>I have a script that does some stuff and then returns me a long
>string of name value pairs....
>something along the lines of:
>item=value&item2=value2&item3=value3....
>
>so, I need to parse this and retrieve the
>name value pairs.
>The data being returned to me is coming from an external script
>that I have no control over (I believe it's just sending out the
>contents of a scaler as one long string)
>
>Any thoughts on a quick and dirty way to extract using the
>& and the = as my conditions?
I'll take this at face value and assume that it has nothing to do with
parameter passing in URLs, for which there are library routines to decode.
Also, you don't say whether item or value can contain = or &; if they can,
you need to describe the escaping mechanism. Otherwise, with the string in $_:
%value = /([^=]+)=([^&]+)(?:&|$)/g;
--
Peter Scott
------------------------------
Date: Mon, 11 Sep 2000 15:42:26 GMT
From: mexicanmeatballs@my-deja.com
Subject: Re: use strict: why?
Message-Id: <8piugs$in1$1@nnrp1.deja.com>
In article <39B96AC4.B37EEB6@stomp.stomp.tokyo>,
"Godzilla!" <godzilla@stomp.stomp.tokyo> wrote:
> Bart Lateur wrote:
>
> > Godzilla! wrote:
>
> > You seem to misunderstand what local() does.
>
> Actually, I seem to understand this distinct
> difference between global and local better
> than anyone in this group, except Randal
> and perhaps Mr. Berry.
>
> >It's something like this:
>
> No, same variable name, different
> variable value. What was a drake,
> becomes a transvestite ugly duckling,
> then, steps back into his closet only
> to become a drake again.
>
> You boys are trying to equate values
> with being the same thing. They are
> not. Same variable name, different goose,
> in punny way.
It's actually the same bloomin' goose, although the distinction
probably only matters with threads, consider:
#!/usr/local/bin/perl -w
use Thread;
$x = 0;
my $thr = new Thread \&sub1;
sleep(5);
print "Global$x\n";
$x=0;
print "Global$x\n";
$thr->join;
print "Global:$x\n";
exit;
sub sub1 {
local $x;
for($n=0;$n<10;$n++) {
$x++;
print "Thread:$x\n";
sleep(1);
}
}
The subroutine thread makes reference to a localized $x,
concurrently with the main thread, entry to the subroutine
causes 0 to be stored as the value of $x, the thread then modifies
$x a few times (5?) before the global thread displays it's value
_the_same_value_as_the_thread_ it then changes the value. The value
in the thread is now _also_changed_ the thread continues changing
the value. The threads then rendevous at the join where the sub
thread ends, _the_original_value_is_restored_ in this case 0, which
is displayed correctly in the global thread.
If you expected a truly local variable, this behaviour would be more
than a bit suprising to you. Swapping local for my produces a more
easily followed program and, crucially, different results.
Output of above program:
# ./thread.pl
Thread:1
Thread:2
Thread:3
Thread:4
Thread:5
Global5
Global0
Thread:1
Thread:2
Thread:3
Thread:4
Thread:5
Global:0
#
There appears to be some doubt about my identity, My sig isn't a JAPH,
it's my email address obfuscated. I shall no doubt regret posting that
in clear text for ever more. I am NOT Ben Kennedy, I am NOT the goose.
--
Jon
perl -e 'print map {chr(ord($_)-3)} split //, "MrqEdunhuClqdph1frp";'
Sent via Deja.com http://www.deja.com/
Before you buy.
------------------------------
Date: Mon, 11 Sep 2000 17:25:29 GMT
From: cberry@cinenet.net (Craig Berry)
Subject: Re: use strict: why?
Message-Id: <srq5c9gct6168@corp.supernews.com>
A@yahoo.co.uk>
Distribution:
Nick Condon (nickco3@yahoo.co.uk) wrote:
: Craig Berry wrote:
:
: > <quibble>
: > Methane is odorless. "Natural gas" as used in homes has a smelly
: > chemical added to it in order to make leaks more easily detectable.
: > </quibble>
:
: What about "natural gas" of my own... err... making? That's certainly
: easy to detect. :-)
Clearly, you've got that "addition of smelly chemical" angle covered...
--
| Craig Berry - http://www.cinenet.net/~cberry/
--*-- "Every force evolves a form."
| - Shriekback
------------------------------
Date: 11 Sep 2000 15:03:21 GMT
From: mgopi@csa.iisc.ernet.in
Subject: using filehandles in strict mode
Message-Id: <8pis7p$3ss$1@news.netmar.com>
i've declared use strict.
then whenever i use filehandles in a function such as fileno(),or assign it to
something
an error is shown as
bare file handles caanot be used in strict mode.
i couldn't understand what does that mean.
as far as i know i can't declare it using my function.
another q on select.
select returns the position of the filehandle in the bit or the filehandle
itself
thanx
----- Posted via NewsOne.Net: Free (anonymous) Usenet News via the Web -----
http://newsone.net/ -- Free reading and anonymous posting to 60,000+ groups
NewsOne.Net prohibits users from posting spam. If this or other posts
made through NewsOne.Net violate posting guidelines, email abuse@newsone.net
------------------------------
Date: Mon, 11 Sep 2000 13:18:08 -0400
From: "Ric Smith" <rickyfusion@nospamfusionserver.com>
Subject: xml type file parsing help.
Message-Id: <8pj476$91e$1@server.cntfl.com>
Hello,
I have a couple of thousand files of the below format. They're
sort of xml'ish. I need to parse them and insert them into a db.
I need an idea of how to parse these files. Once of got the file
parsed and the values assigned to vars I can insert them no
problem.
Thanks.
Ric Smith
---------------------
<chapter>
<chapnum>CHAPTER 798</chapnum>
<chapname>ADULTERY; COHABITATION</chapname>
<section>
<sectnum>798.01</sectnum>
<catchlne>Living in open adultery.</catchlne>
<sectbody>Whoever lives in an open state of adultery shall be
guilty of a misdemeanor of the second degree, punishable as
provided in s. 775.082 or s. 775.083. Where either of the parties
living in an open state of adultery is married, both parties so
living shall be deemed to be guilty of the offense provided for in
this section.</sectbody>
<hist>s. 1, ch. 1986, 1874; RS 2595; GS 3518; RGS 5406; CGL 7549; s. 772,
ch. 71-136.</hist>
</section>
<section>
<sectnum>798.02</sectnum>
<catchlne>Lewd and lascivious behavior.</catchlne>
<sectbody>If any man and woman, not being married to each other,
lewdly and lasciviously associate and cohabit together, or if any
man or woman, married or unmarried, engages in open and gross
lewdness and lascivious behavior, they shall be guilty of a
misdemeanor of the second degree, punishable as provided in s.
775.082 or s. 775.083.</sectbody>
<hist>s. 6, ch. 1637, 1868; RS 2596; GS 3519; RGS 5407; CGL 7550; s. 773,
ch. 71-136.</hist>
</section>
</chapter>
---------------------
------------------------------
Date: 16 Sep 99 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin)
Subject: Digest Administrivia (Last modified: 16 Sep 99)
Message-Id: <null>
Administrivia:
The Perl-Users Digest is a retransmission of the USENET newsgroup
comp.lang.perl.misc. For subscription or unsubscription requests, send
the single line:
subscribe perl-users
or:
unsubscribe perl-users
to almanac@ruby.oce.orst.edu.
| NOTE: The mail to news gateway, and thus the ability to submit articles
| through this service to the newsgroup, has been removed. I do not have
| time to individually vet each article to make sure that someone isn't
| abusing the service, and I no longer have any desire to waste my time
| dealing with the campus admins when some fool complains to them about an
| article that has come through the gateway instead of complaining
| to the source.
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 V9 Issue 4287
**************************************