[22561] in Perl-Users-Digest

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

Perl-Users Digest, Issue: 4782 Volume: 10

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Sat Mar 29 09:06:08 2003

Date: Sat, 29 Mar 2003 06:05:11 -0800 (PST)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)

Perl-Users Digest           Sat, 29 Mar 2003     Volume: 10 Number: 4782

Today's topics:
        [ANN] Tk::Stderr 1.1 uploaded to CPAN <kevin@vaildc.net>
    Re: And... <hiro@asari.net>
    Re: And... <amiba128@sd6.so-net.ne.jp>
    Re: And... <amiba128@sd6.so-net.ne.jp>
    Re: And... <tassilo.parseval@rwth-aachen.de>
    Re: And... <tore@aursand.no>
    Re: And... <amiba128@sd6.so-net.ne.jp>
    Re: And... <amiba128@sd6.so-net.ne.jp>
    Re: can't find this module Net::YahooMessenger <goldbb2@earthlink.net>
    Re: can't find this module Net::YahooMessenger <me@privacy.net>
    Re: CGI.pm or roll-your-own? <noreply@gunnar.cc>
    Re: CGI.pm or roll-your-own? <noreply@gunnar.cc>
    Re: DBI problem <bigus NO @ SPAM creationfactor .net>
        LAN/GPIB gateway modules <george_m@bigpond.net.au>
    Re: LAN/GPIB gateway modules <palaste@cc.helsinki.fi>
    Re: LAN/GPIB gateway modules <george_m@bigpond.net.au>
    Re: match all but this <idont@thinkso.net>
    Re: match all but this <idont@thinkso.net>
        match except between... <idont@thinkso.net>
        Multiple POSTS and GETS from one perl script <meanblue@rascalsdesign.biz>
    Re: open fails with filename starting with space <vilmos@vilmos.org>
    Re: open fails with filename starting with space <idont@thinkso.net>
    Re: Perl and Objects <tassilo.parseval@rwth-aachen.de>
    Re: Perl/LWP Question <bart.lateur@pandora.be>
    Re: Please tell me I'm beginner <amiba128@sd6.so-net.ne.jp>
    Re: Please tell me I'm beginner <tore@aursand.no>
    Re: Please tell me I'm beginner <amiba128@sd6.so-net.ne.jp>
    Re: Please tell me I'm beginner <noreply@gunnar.cc>
        rename junk <istink@real.bad.com>
    Re: rename junk (Tad McClellan)
    Re: simple substitution also changes line endings (Tuang)
    Re: simple substitution also changes line endings <goldbb2@earthlink.net>
        ways to split big modules ? <pilsl_usenet@goldfisch.at>
    Re: ways to split big modules ? <noreply@gunnar.cc>
        Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)

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

Date: Sat, 29 Mar 2003 06:22:05 GMT
From: Kevin Michael Vail <kevin@vaildc.net>
Subject: [ANN] Tk::Stderr 1.1 uploaded to CPAN
Message-Id: <7891cc32a152788138b1b0c66cf9708b@news.teranews.com>

Tk::Stderr is a Perl/Tk module that redirects output to STDERR to a 
separate window containing a read-only text widget.  The window doesn't 
appear until needed.  The user can close the window if they don't want 
to see it; it'll come back when there's more output to be displayed.

All you have to do to get this to work is add these lines to your 
program:

    use Tk::Stderr;

    $mw = MainWindow->new->InitStderr;

Then stuff like this will work:

    print STDERR 'stuff';   ## goes to standard error window
    warn 'eek!';            ## likewise

Version 1.1 adds the Tk dependency to Makefile.PL.
-- 
Kevin Michael Vail | Dogbert: That's circular reasoning.
kevin@vaildc.net   | Dilbert: I prefer to think of it as no loose ends.
http://www.vaildc.net/kevin/




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

Date: Fri, 28 Mar 2003 23:52:17 -0600
From: "Hiro Asari" <hiro@asari.net>
Subject: Re: And...
Message-Id: <v8ad4gp2hvvk47@corp.supernews.com>

"Ami" <amiba128@sd6.so-net.ne.jp> wrote in message
news:3e85034f$0$55953$45beb828@newscene.com...
> If the people, access a Web page, has the cookie,
>    the page is displayed.
> But the man, access a Web page, doesn't have the cookie,
>    the page isn't displayed and jump to another page.
> I want to know a script for the purpose as prohibition direct link.
>
> #!/usr/bin/perl
> if ( index ( $ENV{'HTTP_COOKIE'} , 'hello' ) < 0 ) {
>      print "Location: http://www.usa.com/\n\r";
> }
>
> Am I right ?
> Is the script right ?
>
>

Since you're not doing anything with the position of the substring, index is
probably uncalled for.

if ($ENV{'HTTP_COOKIE'} !~ m/hello/) {
    # do stuff
}


You should try fj.comp.lang.perl.  If you aren't too comfortable with
English.




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

Date: 29 Mar 2003 02:03:06 -0600
From: "Ami" <amiba128@sd6.so-net.ne.jp>
Subject: Re: And...
Message-Id: <3e855291$0$9608$45beb828@newscene.com>

Thank you, Mr. Asari !

"Hiro Asari" <hiro@asari.net> wrote in message
news:v8ad4gp2hvvk47@corp.supernews.com...
> "Ami" <amiba128@sd6.so-net.ne.jp> wrote in message
> news:3e85034f$0$55953$45beb828@newscene.com...
> > If the people, access a Web page, has the cookie,
> >    the page is displayed.
> > But the man, access a Web page, doesn't have the cookie,
> >    the page isn't displayed and jump to another page.
> > I want to know a script for the purpose as prohibition direct link.
> >
> > #!/usr/bin/perl
> > if ( index ( $ENV{'HTTP_COOKIE'} , 'hello' ) < 0 ) {
> >      print "Location: http://www.usa.com/\n\r";
> > }
> >
> > Am I right ?
> > Is the script right ?
> >
> >
>
> Since you're not doing anything with the position of the substring, index is
> probably uncalled for.
>
> if ($ENV{'HTTP_COOKIE'} !~ m/hello/) {
>     # do stuff
> }
>
>
> You should try fj.comp.lang.perl.  If you aren't too comfortable with
> English.




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

Date: 29 Mar 2003 02:43:08 -0600
From: "Ami" <amiba128@sd6.so-net.ne.jp>
Subject: Re: And...
Message-Id: <3e855c05$0$41594$45beb828@newscene.com>

$B?tF|A0M'?M$+$iD>%j%s%/$rKI$0%9%/%j%W%H$N0MMj$r<u$1$^$7$F(B
$B;d$H$7$^$7$F$b!"2?G/$V$j$+$N;v$J$N$G$9$C$+$j:$$C$F$7$^$C$?$N$G$9!#(B
$B0MMj$H8@$&$N$O$"$k%Z!<%8$G%/%C%-!<$r%;%C%H$7$FJL$N%Z!<%8$K%"%/%;%9$7$?;~$K(B
$B$=$NM-L5$rD4$Y$F!"$b$7$"$C$?$i$=$N$^$^I=<($7$F!"JL$N%/%C%-!<$r%;%C%H$G$-$k(B
$B$=$7$F!"$b$7%/%C%-!<$,$J$+$C$?$i;XDj$N%Z!<%8$KHt$P$;$k$h$&$J%9%/%j%W%H$r!D(B
$B$H$$$&0MMj$r<u$1$^$7$?!#(B
$BM'?M$b?'!9$J7G<(HD$GD4$Y$F$$$k$1$I!"$b$C$?$$$V$C$??M4V$,B?$/$F65$($FLc$($J$$(B
$B$J$I$H$3$\$7$F$$$^$9$,!"AG?M$@$+$i<ALd$N;EJ}$,0-$$$N$@$1$J$N$@$H;W$C$F$$$^$9!#(B
#!/usr/bin/perl
use strict;&main;exit;
sub main{
    my $id = "hello";
    my $value = "";
    print "Set-Cookie: ".setcookie($id,\$value);
    print "Content-Type: text/plain\n\n";
    print "SetCookie!!";
}
sub setcookie{
    my ($id,$cookie) = @_;
    my $expires = "";
    my $day = 1;
    $$cookie =~ s/([^\w ])/'%'.unpack('H2',$1)/eg;
    $$cookie =~ tr/ /+/;
  if ($day > 0){
  my ($mday,$month,$year,$youbi) = (gmtime(time +($day * 86400)))[3..6];
$day=('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday')[$d
ay];
$month=('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec')
[$month];
    $year += 1900;
    $mday = sprintf("%02d",$mday);
    $expires = " expires=$youbi, $mday-$month-$year 00:00:00 GMT";
}
return "$id=$$cookie;$expires\n";
}
$B$G@_Dj$O$G$-$k$O$:$@$H$$$&;v$G$9!#(B
$B$?$@%V%i%&%6$rJD$8$F$b>C$($J$$$N$G!"%V%i%&%6$rJD$8$?$i>C$($k$h$&$K$7$F$[$7$$(B
$B$H$N;v$J$N$G$r(Bmy $day = 1;0$B$K$9$l$PNI$$$N$G$O!D$HJV$7$?$N$G$9$,(B
$B$I$&$b$=$&$G$b$J$$$_$?$$$J$N$G!":$$C$?;d$,$"$A$i$K=P$7$?<ALd$,:G=i$N<ALd$G$9!#(B

$B$=$7$F%/%C%-!<$NM-L5$rD4$Y$F$J$+$C$?>l9g!";XDj$N%Z!<%8$KHt$P$9$N$,(B
$B0J2<$K=q$$$?$b$N$@$C$?$N$G$9!#(B
$B5-21$,Dj$+$G$O$J$$$G$9$,!"0J2<$N$h$&$K=q$$$F@5$7$+$C$?H&$J$N$G$9$,(B
$BA4$/K:$l$F$7$^$C$F$$$^$7$?!#(B
#!/usr/bin/perl
if ( index ( $ENV{'HTTP_COOKIE'} , 'hello' ) < 0 ) {
    print "Location: http://www.hoge.com/\n";
}
$B$I$&$b$$$&;v$rJ9$$$F$/$l$^$;$s%M!#(B(^^$B!6(B
$B!D$H$$$&Lu$G$H$F$b:$$C$F$$$^$9!#(B




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

Date: 29 Mar 2003 09:13:48 GMT
From: "Tassilo v. Parseval" <tassilo.parseval@rwth-aachen.de>
Subject: Re: And...
Message-Id: <b63o4c$ncs$1@nets3.rz.RWTH-Aachen.DE>

Also sprach Ami:

> $B?tF|A0M'?M$+$iD>%j%s%/$rKI$0%9%/%j%W%H$N0MMj$r<u$1$^$7$F(B
> $B;d$H$7$^$7$F$b!"2?G/$V$j$+$N;v$J$N$G$9$C$+$j:$$C$F$7$^$C$?$N$G$9!#(B
> $B0MMj$H8@$&$N$O$"$k%Z!<%8$G%/%C%-!<$r%;%C%H$7$FJL$N%Z!<%8$K%"%/%;%9$7$?;~$K(B
> $B$=$NM-L5$rD4$Y$F!"$b$7$"$C$?$i$=$N$^$^I=<($7$F!"JL$N%/%C%-!<$r%;%C%H$G$-$k(B
> $B$=$7$F!"$b$7%/%C%-!<$,$J$+$C$?$i;XDj$N%Z!<%8$KHt$P$;$k$h$&$J%9%/%j%W%H$r!D(B
> $B$H$$$&0MMj$r<u$1$^$7$?!#(B
> $BM'?M$b?'!9$J7G<(HD$GD4$Y$F$$$k$1$I!"$b$C$?$$$V$C$??M4V$,B?$/$F65$($FLc$($J$$(B
> $B$J$I$H$3$\$7$F$$$^$9$,!"AG?M$@$+$i<ALd$N;EJ}$,0-$$$N$@$1$J$N$@$H;W$C$F$$$^$9!#(B

I am not the only one seeing the above garbage in my newsreader, am I?

To Ami: crossposting to comp.lang.perl.misc and fj.comp.lang.perl is
probably a bad idea unless you can post in a way that is readable to
both groups. If you prefer the Japanese language for your posts, better
remove comp.lang.perl.misc from the list of groups. Postings like this
namely have me worried whether I might have done something wrong with
the configuration of my fonts. ;-)

Tassilo
-- 
$_=q#",}])!JAPH!qq(tsuJ[{@"tnirp}3..0}_$;//::niam/s~=)]3[))_$-3(rellac(=_$({
pam{rekcahbus})(rekcah{lrePbus})(lreP{rehtonabus})!JAPH!qq(rehtona{tsuJbus#;
$_=reverse,s+(?<=sub).+q#q!'"qq.\t$&."'!#+sexisexiixesixeseg;y~\n~~dddd;eval


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

Date: Sat, 29 Mar 2003 10:27:01 +0100
From: "Tore Aursand" <tore@aursand.no>
Subject: Re: And...
Message-Id: <pan.2003.03.29.09.19.19.135371@aursand.no>

On Fri, 28 Mar 2003 21:50:14 -0600, Ami wrote:
> I have a problem to my English, because I am Japanese are for American
> against Iraq.

*ROTFL*


-- 
Tore Aursand


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

Date: 29 Mar 2003 06:40:07 -0600
From: "Ami" <amiba128@sd6.so-net.ne.jp>
Subject: Re: And...
Message-Id: <3e859380$0$8554$45beb828@newscene.com>

Excuse me, Mr. Parseval !
It was careless.
I'd forgot the fact it was crosspost,
  because it's been long time since my last post.
Entschuldigen Sie, Herr Parseval !
Es war unaufmerksam von mich.
Volkkommen haben ich verlernt,
  denn seit meiner letzter Post viel Zeit genommen hast.

"Tassilo v. Parseval" <tassilo.parseval@rwth-aachen.de> wrote in message
news:b63o4c$ncs$1@nets3.rz.RWTH-Aachen.DE...
> Also sprach Ami:
>
>
> I am not the only one seeing the above garbage in my newsreader, am I?
>
> To Ami: crossposting to comp.lang.perl.misc and fj.comp.lang.perl is
> probably a bad idea unless you can post in a way that is readable to
> both groups. If you prefer the Japanese language for your posts, better
> remove comp.lang.perl.misc from the list of groups. Postings like this
> namely have me worried whether I might have done something wrong with
> the configuration of my fonts. ;-)
>
> Tassilo
> --
> $_=q#",}])!JAPH!qq(tsuJ[{@"tnirp}3..0}_$;//::niam/s~=)]3[))_$-3(rellac(=_$({
> pam{rekcahbus})(rekcah{lrePbus})(lreP{rehtonabus})!JAPH!qq(rehtona{tsuJbus#;
> $_=reverse,s+(?<=sub).+q#q!'"qq.\t$&."'!#+sexisexiixesixeseg;y~\n~~dddd;eval




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

Date: 29 Mar 2003 06:49:06 -0600
From: "Ami" <amiba128@sd6.so-net.ne.jp>
Subject: Re: And...
Message-Id: <3e8595bd$0$13151$45beb828@newscene.com>

So what ?
Realize of faggot and I laugh.

> *ROTFL*
>
>
> --
> Tore Aursand




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

Date: Sat, 29 Mar 2003 00:39:14 -0500
From: Benjamin Goldberg <goldbb2@earthlink.net>
Subject: Re: can't find this module Net::YahooMessenger
Message-Id: <3E853182.8842704A@earthlink.net>

Kelly Greer wrote:
> 
> hi group,
> 
> Can't find this module Net::YahooMessenger
> Any idea where I can get it?  Doesn't seem to be in CPAN.

It's there, in the Net-YahooMessenger-0.13 distribution.
Look in the $CPAN/O/OY/OYAMA/ directory.

> Neither does Net::YMSG.

That's in the Net-YMSG-1.2 distribution, also on CPAN.
Look in the $CPAN/V/VA/VARUNK/ directory.

> A Google search didn't yield much.

I generally use:
   http://theoryx5.uwinnipeg.ca/CPAN/cpan-search.html

-- 
$a=24;split//,240513;s/\B/ => /for@@=qw(ac ab bc ba cb ca
);{push(@b,$a),($a-=6)^=1 for 2..$a/6x--$|;print "$@[$a%6
]\n";((6<=($a-=6))?$a+=$_[$a%6]-$a%6:($a=pop @b))&&redo;}


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

Date: Sat, 29 Mar 2003 18:15:25 +1100
From: "Tintin" <me@privacy.net>
Subject: Re: can't find this module Net::YahooMessenger
Message-Id: <b63h6b$1akeh$1@ID-172104.news.dfncis.de>


"Kelly Greer" <kellygreer1@hell.rr.com> wrote in message
news:1B8ha.8149$Pk6.386849@twister.southeast.rr.com...

[removed dead comp.lang.perl group]

> hi group,
>
> Can't find this module Net::YahooMessenger
> Any idea where I can get it?  Doesn't seem to be in CPAN.

You can't have looked too hard

http://search.cpan.org/search?query=yahoomessenger&mode=all




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

Date: Sat, 29 Mar 2003 12:24:11 +0100
From: Gunnar Hjalmarsson <noreply@gunnar.cc>
Subject: Re: CGI.pm or roll-your-own?
Message-Id: <b63vpd$1fcpn$1@ID-184292.news.dfncis.de>

Alan J. Flavell wrote:
> On Sat, Mar 29, Gunnar Hjalmarsson inscribed on the eternal scroll:
>>Actually, the fact that the module ignores querystrings
>>is a security detail.
> 
> Could you expand a bit on that, please?  I can't quite see how
> the difference could be, in and of itself, a security issue.

First and most important: Considering the implied security risks with 
CGI, to me it does not seem advisable to open up more doors to the 
system than necessary.

When I announced the first version of the module a few weeks ago, Bill 
Segrave called my attention (in comp.infosystems.www.authoring.cgi) to 
the risk with email forms in general that abusers add newline 
characters to an email header field using hex encoding, and with that 
submit additional headers. We concluded that, since the module doesn't 
take GET requests, that is a non-issue in this case.

Also, if you study the program flow, you will notice that the 
limitation to accepting POST requests works together with another 
security measure, i.e. a referer check to prevent that information is 
submitted from anywhere else but the module generated form. (I suppose 
this could be handled otherwise, but the check of the REQUEST_METHOD 
environment variable is a simple solution.)

> Caveat: I haven't looked at the whole thing properly yet,
> I'm only commenting on what you posted to the thread.

I would very much appreciate feedback on the whole module. (It's 
small, and I believe that the code is easy to follow.)

/ Gunnar

-- 
Gunnar Hjalmarsson
Email: http://www.gunnar.cc/cgi-bin/contact.pl



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

Date: Sat, 29 Mar 2003 12:24:14 +0100
From: Gunnar Hjalmarsson <noreply@gunnar.cc>
Subject: Re: CGI.pm or roll-your-own?
Message-Id: <b63vpg$1fcpn$2@ID-184292.news.dfncis.de>

Randal L. Schwartz wrote:
>>>>>>"Tintin" == Tintin  <me@privacy.net> writes:
> 
> Tintin>         $in{$name} = $value;
> 
> Tintin> 1.  Only supports POST requests.
> Tintin> 2.  Open to buffer overflows.
> Tintin> 3.  Doesn't handle ; as a parameter separator
> 
> 4. doesn't handle multivalue options.  Common problem.

Hmm.. Taking into consideration that the module does not include any 
multivalue options, how can that be a problem? ;-)  As I pointed out 
to Tintin, the readform() subroutine is not a parsing routine for 
general use, but just a part of this particular module.

/ Gunnar

-- 
Gunnar Hjalmarsson
Email: http://www.gunnar.cc/cgi-bin/contact.pl



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

Date: Sat, 29 Mar 2003 12:13:35 -0000
From: "Bigus" <bigus NO @ SPAM creationfactor .net>
Subject: Re: DBI problem
Message-Id: <Z5gha.2681$8s6.19894@newsfep4-glfd.server.ntli.net>

Many thanks for your reply. I've placed comments in-line below.

Regards
Bigus

"Benjamin Goldberg" <goldbb2@earthlink.net> wrote in message
news:3E852B3C.E00F6FBF@earthlink.net...
[..]
> > # check if table exists & create it if not
> > $sth = $db->prepare("SELECT * FROM $groupdb ORDER BY article DESC");
>
> Given that you really only want one article, how about:
>
> $sth = $db->prepare(qq[
>    SELECT max(article) FROM $groupdb
> ]);

Thanks, that would be a better way of doing it. One question though..
Looking at the DBI docs
(http://www.he.net/info/mysql/dbi.html#Placeholders_and_Bind_Values -
Performance), for the qq.. syntax it uses curly brackets qq{..}, but above
you use square brackets. I've not managed to grasp the logic behind the use
of different types of brackets in Perl yet and I'm still confused! ;-)

>
> > if(!$sth->execute)
> > {
> >    if(!$db->do("CREATE TABLE $groupdb (article number,poster
text(255),refs
> > memo,subject text(255),thedate text(16),client text(255),messageid
> > text(255))")){$msg = "Failed to create table $groupdb"; &dberror();}
>
> You're assuming that the only possible failure is from nonexistance of
> the table?  That's not good -- there are a whole variety of possible
> reasons for failure.

Yes, true.. I was banking on it being the only "likely" failure.. not good
practise, but this program is not for commercial purposes and only for use
by a small group of people.. excuse excuses ;-)

> I would move the table creation to *before* the statement preparation,
> and write it as:
>
>    $db->do(qq[
>       CREATE TABLE IF NOT EXISTS $groupdb (
>          article number,
>          poster text(255),
>          refs memo,
>          subject text(255),
>          thedate text(16),
>          client text(255),
>          messageid text(255)
>       )
>    ]);

Ahhhhh, a little SQL lesson there.. thanks!

> Is this program being run by a CGI?  If so, then there's a race
> condition -- two difference CGI instances could be accessing this script
> at the same time, and thus both might end up trying to create the table.

Yes, it's a browser-based news client for a small community on a private
news server. The Access DB holds the headers of the news posts. I've never
written a multi-user program before, so I don't know how to get around that
problem. I was largely hoping that due the predicted usage of it and the
unlikelihood of actions like creating tables and inserting rows happening at
exactly the same time that this problem wouldn't crop up and if it did, I
could fix the DB manually.
I guess it wouldn't be difficult for me to create a temp file, before the
table is created or a row is inserted, put a flag in it, then delete the
file after the action. Then if someone else comes along and tries the same
thing, the script would check for the presence of the flag and if it finds
it waits for a period of time. However, that raises the question of what
happens if someone hits the stop button their browser and the temp file/flag
isn't deleted.. hmmmm.. if you know any websites that discuss methods of
locking/queueing processes like this, please let me know.

> > That works fine and therefore the if() block is working.
> >
> > If the table does exist then what it's supposed to do is get the
> > article id ($row[0]) of the first record returned by the original
> > SELECT statement.
> > However, it skips the while() block altogether, so the SELECT
> > statement doesn't appear to be returning any records even though there
> > are loads in the table.
>
> If the 'else' block containing the 'while' block is never entered, then
> there's a problem.
>
> If the 'else' block is entered, but the body of the 'while' block isn't
> entered, then there's a *different* problem.

Yes, it's the while{} block that isn't entered.

> Without more info, we can't help you.
>
> Also, what is $DBI::errstr just below the while loop?

Ahhh, I put the "$sth->err" or whatever it is in there.. that was
returning -1. Placing $DBI::errstr after the while{} block comes up with
this:

"[Microsoft][ODBC Microsoft Access Driver]String data, right truncated on
column number 3 (refs) (SQL-01004)(DBD: st_fetch/SQLFetch (long truncated
DBI attribute LongTruncOk not set and/or LongReadLen too small) err=-1)"

Yikes! Any idea what that means? Is it something to do with the data in
column 3? It will either contain one or more references like this
"b7al8f.1d4.1@hamster.local.invalid#b3aln0.1l4.1@hamster.local.invalid" or a
space " ".

Bigus




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

Date: Sat, 29 Mar 2003 10:48:30 GMT
From: "gm" <george_m@bigpond.net.au>
Subject: LAN/GPIB gateway modules
Message-Id: <2Seha.1555$ft3.6652@news-server.bigpond.net.au>

Dear Perl,
    I am looking for a perl module to control a GPIB LAN gateway.
The gateway I have access to is the Agilent E5810A or the National
Instruments ENET/100.

I have looked at the Perl GPIB module by Jeff Mock.
This module is designed around specific GPIB instruments not for LAN control
devices.

The languages of preference are: Perl, C/C++, Java.

The devices I am trying to controll look like this:
Unix------->LAN/GPIB gateway---->GPIB devices
Solaris         E5810A                           Agilent 34970A with 34906A
modules in the chassis
                        or                                 Switch Unit
Dual 4 channel RF MUX module
                   ENET/100

The gateway is the GPIB controller, while the instrument is a device with a
unique id on the GPIB bus.
The device would be referenced something like: gpib0,9 (GPIB controller
gpib0 and device id 9).
All I need to do is issue the following type of commands to set or read the
state of a switch/s:

# Close a gate in the RF switch
route:close (@111)

# Read the state of the switch/s
route:close? (@111,112,113,114)

If anyone has a module that would do this or any info that may assist me in
writing one I would be forever grateful.

Please email any replies to george_m@bigpond.net.au.

thanks,
georgem




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

Date: 29 Mar 2003 11:49:09 GMT
From: Joona I Palaste <palaste@cc.helsinki.fi>
Subject: Re: LAN/GPIB gateway modules
Message-Id: <b6417l$2q$1@oravannahka.helsinki.fi>

gm <george_m@bigpond.net.au> scribbled the following
on comp.lang.c:
> Dear Perl,
>     I am looking for a perl module to control a GPIB LAN gateway.
> The gateway I have access to is the Agilent E5810A or the National
> Instruments ENET/100.

If you are looking for a Perl module, why are you posting to C, C++ or
Java groups?

-- 
/-- Joona Palaste (palaste@cc.helsinki.fi) ---------------------------\
| Kingpriest of "The Flying Lemon Tree" G++ FR FW+ M- #108 D+ ADA N+++|
| http://www.helsinki.fi/~palaste       W++ B OP+                     |
\----------------------------------------- Finland rules! ------------/
"Roses are red, violets are blue, I'm a schitzophrenic and so am I."
   - Bob Wiley


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

Date: Sat, 29 Mar 2003 12:01:30 GMT
From: "george_m" <george_m@bigpond.net.au>
Subject: Re: LAN/GPIB gateway modules
Message-Id: <uWfha.1630$ft3.7770@news-server.bigpond.net.au>

Perl is prefereable, but I C/C++ or Java are also options.
I will take what ever is available.

georgem


"Joona I Palaste" <palaste@cc.helsinki.fi> wrote in message
news:b6417l$2q$1@oravannahka.helsinki.fi...
> gm <george_m@bigpond.net.au> scribbled the following
> on comp.lang.c:
> > Dear Perl,
> >     I am looking for a perl module to control a GPIB LAN gateway.
> > The gateway I have access to is the Agilent E5810A or the National
> > Instruments ENET/100.
>
> If you are looking for a Perl module, why are you posting to C, C++ or
> Java groups?
>
> --
> /-- Joona Palaste (palaste@cc.helsinki.fi) ---------------------------\
> | Kingpriest of "The Flying Lemon Tree" G++ FR FW+ M- #108 D+ ADA N+++|
> | http://www.helsinki.fi/~palaste       W++ B OP+                     |
> \----------------------------------------- Finland rules! ------------/
> "Roses are red, violets are blue, I'm a schitzophrenic and so am I."
>    - Bob Wiley




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

Date: Sat, 29 Mar 2003 08:24:31 -0500
From: "Chris W" <idont@thinkso.net>
Subject: Re: match all but this
Message-Id: <JeycnWCQA876AxijXTWc3A@comcast.com>


"istink" <istink@real.bad.com> wrote in message
news:3E850CD7.ACEBDF85@real.bad.com...
> how do I match all occurrences of this word but not when its between
> these symbols?
>
> I have:
> $str="word123 word123 (word123) word123";
>
> with this:
> s/word123/X/g
> I find 4 occurrences
>
> s/[word123]/X/g
> wont work.
>
> I can imagine this sudo code:
> s/word123 _but_not_inside \(.*\)/X/g
>
> great for html code.
> where:
> <font color="red">my red keyboard</font>
> I would want to replace "red" in the text with blue but I don't want
> to replace the "red" in the font tag.

If the HTML is truly up to date, why not search for /[^\"]red[^\"]/ instead?
The chance of finding the double-quoted word in the text part of HTML is so
slim as to be non-existant..  This should do the trick:

$a =~ s/([^"])red([^"]?)/$1blue$2/g;

This works for me, but test at your own risk!  You search for /anychar
except "/ followed by /red/ followed by /anychar except ", or no char/.
(The /no char/ part fixes end-of-string problems, however unlikely in HTML.)
Since you match a single char on each side of red, you have to remember to
put them back when you replace, and the backreferences $1 and $2 take care
of that.





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

Date: Sat, 29 Mar 2003 08:32:33 -0500
From: "Chris W" <idont@thinkso.net>
Subject: Re: match all but this
Message-Id: <yMGcnVrHxt3VPRijXTWcpQ@comcast.com>


"istink" <istink@real.bad.com> wrote in message
news:3E850CD7.ACEBDF85@real.bad.com...
> how do I match all occurrences of this word but not when its between
> these symbols?

$a =~ s/([^<].*)red(.*[^>]?)/$1blue$2/gs;

I really didn't think this would work, even though Programming Perl hints at
it, but I tried it after my last post, and voila!  PLEASE do thorough
testing, though, as I am VERY new to Perl, and I don't know all the
implications of regexes this broad.  The script that I tested with was this:

   $a= '<this is red, but> this is red';
   $a =~ s/([^<].*)red(.*[^>]?)/$1blue$2/gs;
   print $a;

Any other application is yours to test!




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

Date: Sat, 29 Mar 2003 08:45:52 -0500
From: "Chris W" <idont@thinkso.net>
Subject: match except between...
Message-Id: <PKSdnS_OVtX6PhijXTWcpA@comcast.com>

Okay, I tested this regex in reply to another question in the group:

   $a= '<this is red, but> <>this is red too <>';
   $a =~ s/([^<].*)red(.*[^>]?)/$1blue$2/gs;
   print $a;

This is supposed to match the word 'red', as long as it is not enclosed in
angle brackets, no matter how many other characters are also in the angle
brackets, and it works great!  But...

Can anyone tell me why it matches the second 'red' in the string???
Technically, it's an opening angle bracket, followed by ">this is red too
<", followed by the closing bracket.  There's obviously something I'm
missing here, probably something about encountering the closing bracket
first.  The fact that such a simple regex works in this case is an accolade
to the coders, for sure, but I'd still like to know why!




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

Date: Sat, 29 Mar 2003 13:14:03 +0000
From: Andrew Newlands <meanblue@rascalsdesign.biz>
Subject: Multiple POSTS and GETS from one perl script
Message-Id: <lu6b8v464670mhnkh194apep2ont1j8376@4ax.com>

I am trying to find out how I can POST data from one perl(A) script to
another perl script(B)without leaving the original script (A) and
allowing it to continue processing.

To put this in a practical example, a script POSTS data calculated to
a script that alters a database, but then POSTS to another script to
display what the user should see.

Can any one help?   


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

Date: 28 Mar 2003 22:20:52 -0800
From: Vilmos Soti <vilmos@vilmos.org>
Subject: Re: open fails with filename starting with space
Message-Id: <87ptoak81n.fsf@localhost.localdomain>

"John W. Krahn" <krahnj@acm.org> writes:

> Vilmos Soti wrote:
> > 
> > I was writing a program which traversed a directory structure
> > (~/GNUstep), and I found that open couldn't open a filename with
> > a leading space. Is there a simple way (not sysopen) around it?
> 
> perldoc -q 'How can I open a file with a leading ">" or trailing blanks'
> perldoc perlopentut

Thanks John. I was reading the section related to open in the
Camel book and didn't find it there.

Vilmos


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

Date: Sat, 29 Mar 2003 07:56:37 -0500
From: "Chris W" <idont@thinkso.net>
Subject: Re: open fails with filename starting with space
Message-Id: <viKdnRfRfoN9ChijXTWcpQ@comcast.com>


"Benjamin Goldberg" <goldbb2@earthlink.net> wrote in message
news:3E852CAE.863FC6A5@earthlink.net...

> $a=24;split//,240513;s/\B/ => /for@@=qw(ac ab bc ba cb ca
> );{push(@b,$a),($a-=6)^=1 for 2..$a/6x--$|;print "$@[$a%6
> ]\n";((6<=($a-=6))?$a+=$_[$a%6]-$a%6:($a=pop @b))&&redo;}

Towers of Hanoi solution in Perl??  Cute!




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

Date: 29 Mar 2003 07:48:31 GMT
From: "Tassilo v. Parseval" <tassilo.parseval@rwth-aachen.de>
Subject: Re: Perl and Objects
Message-Id: <b63j4f$kge$1@nets3.rz.RWTH-Aachen.DE>

Also sprach Joe Creaney:

> I have been reading and learning C++ and Perl.  I prefer to work in Perl 
> is a much friendlier language.  I just find creating classes and objects 
>   in C++ much more strait forward.  It might just be the difference in 
> refrences I have.  I just find all the examples in perl very confusing 
> when I am still confused with objects in general.  Could I get a realy 
> simple example of a program that creates a class may be one attribue and 
>    one method. From that Make two objects that do something in a realy 
> simple program.

Creating classes and objects in Perl is really quite straight-forward
(and I'd argue that it's easier than doing the same in C++). However,
you can make things almost arbitrarily complex (Perl is closer to C++
with respect to this). Here's a basic example of a class with one
attribute (member variable) and two methods that set and get this
attribute:

    #! /usr/bin/perl -w
    use strict;
    
    package MyClass;

    sub new {
        my ($class) = @_;
        return bless { attr => undef } => $class;
    }

    sub set_attr {
        my ($self, $value) = @_;
        $self->{attr} = $value;
    }

    sub get_attr {
        my ($self) = @_;
        return $self->{attr};
    }

    package main;
    
    use Data::Dumper; # to look at the innards of one of the objects
    
    my $obj1 = new MyClass; # or: MyClass->new
    my $obj2 = new MyClass;

    $obj1->set_attr("foo");
    $obj2->set_attr("bar");

    print $obj1->get_attr, "\n";
    print $obj2->get_attr, "\n";

    print Dumper $obj1;
    __END__
    foo
    bar
    $VAR1 = bless( {
                     'attr' => 'foo'
                   }, 'MyClass' );

The most important part is probably the bless() thing. It tells the
thing that is referenced by its first argument (an anonymous hash-ref in
this case) that it is now belonging to the class given as second
argument ($class here, which is the string "MyClass").

The constructur usually is a class-method and therefore receives the
class name as first argument. The instance-methods (which are
called on objects, that is: instances of the class) take the object they
were called on as first parameter ($self in the above examples, in C++
this would be 'this').

This should be all you need for the moment. You will later find out that
Perl's object-model supports a lot of things C++ knows about (such as
multiple-inheritance, operator overloading etc). Some other things are
specific to Perl (I think), such as lvaluable methods (these are methods
that you can assign a value to) and the ingenious AUTOLOAD method that
can be used to create new methods at runtime. If you add a few other
Perl features to it (e.g. closures, taken from the realm of functional
languages) you have enough tools at hand to conveniently build powerful
applications.

Best would be to start off with 'perldoc perlboot'. It's both
entertaining and targeted towards beginners. Then you simply follow the
reading suggested in the "SEE ALSO" section of this manpage.

Tassilo
-- 
$_=q#",}])!JAPH!qq(tsuJ[{@"tnirp}3..0}_$;//::niam/s~=)]3[))_$-3(rellac(=_$({
pam{rekcahbus})(rekcah{lrePbus})(lreP{rehtonabus})!JAPH!qq(rehtona{tsuJbus#;
$_=reverse,s+(?<=sub).+q#q!'"qq.\t$&."'!#+sexisexiixesixeseg;y~\n~~dddd;eval


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

Date: Sat, 29 Mar 2003 09:35:03 GMT
From: Bart Lateur <bart.lateur@pandora.be>
Subject: Re: Perl/LWP Question
Message-Id: <dtpa8vkarji0cn2r7336io51u9ep0geph9@4ax.com>

Tony Curtis wrote:

>> use LWP;
>> my $browser;
>> sub do_GET{
>>   $browser = LWP::UserAgent->new unless $browser;
>   ^^^
>
>I don't see why $browser is declared outside the sub, nor
>how it is initialised (note the test).  It should be
>my()ed here, or a parameter or possibly a class variable
>if it's coming from somewhere else.

No. It's a static variable. You only use one UserAgent, for all your
calls will ever make. It's created on the very first call to this sub,
and then used over and over again.

Note that get() (and the other subs) in LWP::Simple is coded in pretty
much the same way:

	    _init_ua() unless $ua;

where _init_ua sets $ua to a new, properly initialised UserAgent. $ua is
shared among all similar subs -- you can only call one at a time. No
threads, please.

-- 
	Bart.


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

Date: 28 Mar 2003 23:08:28 -0600
From: "Ami" <amiba128@sd6.so-net.ne.jp>
Subject: Re: Please tell me I'm beginner
Message-Id: <3e8529ab$0$8569$45beb828@newscene.com>

I see ! Thank you !
Das habe ich verstand. Danke !

"J$B!&(Bgen Exner" <jurgenex@hotmail.com> wrote in message
news:VV8ha.429$HJ3.14@nwrddc04.gnilink.net...
> Ami wrote:
> > "J$B!&(Bgen Exner" <jurgenex@hotmail.com> wrote in message
> > news:lo8ha.3973$gp1.2331@nwrddc02.gnilink.net...
> >> You may want to ask in a NG that actually deals with things like
> >> HTTP, the Web, and Cookies.
> >
> > I want to know the group of the name, what, it is.
>
> You may want to see the answer to PerlFAQ9:
>     "My CGI script runs from the command line but not the browser.  (500
> Server Error)"
> (just type "perldoc -q 500" and this very question with answer will pop up).
> It contains pointers to NGs and several FAQs which deal with web authoring,
> CGI, HTTP, ....
>
> jue




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

Date: Sat, 29 Mar 2003 10:12:36 +0100
From: "Tore Aursand" <tore@aursand.no>
Subject: Re: Please tell me I'm beginner
Message-Id: <pan.2003.03.29.04.08.53.346414@aursand.no>

On Fri, 28 Mar 2003 20:25:06 -0600, Ami wrote:
> I want to set a cookie in a Web page. And I wish to make the cookie
> disappears, when they close the browser.

That has nothing to do with Perl.

> How do I change the script ?

Looking at your script, I strongly suggest that you start using CGI.pm
instead of reinventing the wheel.


-- 
Tore Aursand


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

Date: 29 Mar 2003 06:36:10 -0600
From: "Ami" <amiba128@sd6.so-net.ne.jp>
Subject: Re: Please tell me I'm beginner
Message-Id: <3e85929a$0$55953$45beb828@newscene.com>

Thank you, sir !

"Tore Aursand" <tore@aursand.no> wrote in message
news:pan.2003.03.29.04.08.53.346414@aursand.no...
> On Fri, 28 Mar 2003 20:25:06 -0600, Ami wrote:
> > I want to set a cookie in a Web page. And I wish to make the cookie
> > disappears, when they close the browser.
>
> That has nothing to do with Perl.
>
> > How do I change the script ?
>
> Looking at your script, I strongly suggest that you start using CGI.pm
> instead of reinventing the wheel.
>
>
> --
> Tore Aursand




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

Date: Sat, 29 Mar 2003 13:58:21 +0100
From: Gunnar Hjalmarsson <noreply@gunnar.cc>
Subject: Re: Please tell me I'm beginner
Message-Id: <b645a0$1h9qt$1@ID-184292.news.dfncis.de>

Ami wrote:
> I want to set a cookie in a Web page.
> And I wish to make the cookie disappears, when they close the browser.
> How do I change the script ?

You want to set a session cookie, which means that you don't need to 
bother about the expires parameter. This is enough for setting a 
session cookie:

     print "Set-cookie: $name=$value\n";

Accordingly, you can skip everything about creating an expiration date.

Hope that helps, and welcome back if you encounter any Perl related 
difficulties when proceeding.

/ Gunnar

-- 
Gunnar Hjalmarsson
Email: http://www.gunnar.cc/cgi-bin/contact.pl



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

Date: Sat, 29 Mar 2003 02:51:24 -0500
From: istink <istink@real.bad.com>
Subject: rename junk
Message-Id: <3E85507C.1C974CAB@real.bad.com>

here's a program I just wrote. It seems to work.
can anyone think of a situation where it wont work properly?

I takes a list of files, say *, then renames them for consistancy and to
get rid of weird chars.
so this ==> becomes that
helloworld.txt ==> helloworld.txt
hello world dot.txt ==> hello_world_dot.txt
hello )(*()*&*&^&^^$#%#@world.txt ==> hello_world.txt
hello            -      world.txt ==> hello-world.txt

think of other posible filenames.


here's my garbage:

foreach $line (@ARGV) {
    if ($line =~ / /){
        $orig=$line;
        ($mod=$line) =~ s/ /_/g; #space to underscore
        $mod =~ s|[^_ \-\.[:alnum:]]||g; #alpha num,_,- allowed
        $mod =~ s|_+\-_+|\-|g; # "    -   " to "-"

        rename $orig, $mod;
        #print "$orig ==> $mod\n";
    }
}


-----------== Posted via Newsfeed.Com - Uncensored Usenet News ==----------
   http://www.newsfeed.com       The #1 Newsgroup Service in the World!
-----= Over 100,000 Newsgroups - Unlimited Fast Downloads - 19 Servers =-----


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

Date: Sat, 29 Mar 2003 06:17:24 -0600
From: tadmc@augustmail.com (Tad McClellan)
Subject: Re: rename junk
Message-Id: <slrnb8b3mk.40t.tadmc@magna.augustmail.com>

istink <istink@real.bad.com> wrote:

> can anyone think of a situation where it wont work properly?


If the directory contains all of these when you start:

    hello world.txt
    hello_world.txt
    hello( )world.txt

it will contain only 'hello_world.txt' when you finish, two
of the files will have been lost.

Better test for existence of the new name before rename()ing over it...


> helloworld.txt ==> helloworld.txt
> hello world dot.txt ==> hello_world_dot.txt
> hello )(*()*&*&^&^^$#%#@world.txt ==> hello_world.txt
> hello            -      world.txt ==> hello-world.txt


> foreach $line (@ARGV) {
>     if ($line =~ / /){
>         $orig=$line;


Why copy it? You can just use $line instead of $orig.


>         rename $orig, $mod;

   next if -e $mod;      # skip if new name already exists
   rename $orig, $mod or warn "could not mv $orig ==> $mod  $!";


-- 
    Tad McClellan                          SGML consulting
    tadmc@augustmail.com                   Perl programming
    Fort Worth, Texas


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

Date: 28 Mar 2003 23:45:53 -0800
From: tuanglen@hotmail.com (Tuang)
Subject: Re: simple substitution also changes line endings
Message-Id: <df045d93.0303282345.472b3ee8@posting.google.com>

Norbert Schmidt <Norbert_Schmidt@DU3.MAUS.DE> wrote in message news:<ejq68vgkn2gutsedav2d6f2e9lq0c8efd2@4ax.com>...
> 
> >Is there any option or line of code or something that I could insert
> >in the filter to tell it "don't make any changes that I don't ask
> >for"?
> 
> Of course, there is! :-)
> binmode() is your friend! 
> 
> Simply turn binmode on for all files (STDIN/STDOUT) and you'll read
> and write files raw.
> 

How do I turn binmode on for all files when using the command line
options to create an automatic loop? This is the whole script:

==========================

#!/cygdrive/c/Perl/bin/perl -w -i.bak -p
#

# insert processing code here:
s/A/X/g;

==========================

how do I use binmode here? I thought maybe $ARGVOUT was the hidden
filename, so I tried inserting 'binmode $ARGVOUT;' before the
substitution, but it didn't work.

Thanks.


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

Date: Sat, 29 Mar 2003 03:12:07 -0500
From: Benjamin Goldberg <goldbb2@earthlink.net>
Subject: Re: simple substitution also changes line endings
Message-Id: <3E855557.96906066@earthlink.net>

Tuang wrote:
> Norbert Schmidt wrote:
> >
> > >Is there any option or line of code or something that I could
> > >insert in the filter to tell it "don't make any changes that I
> > >don't ask for"?
> >
> > Of course, there is! :-)
> > binmode() is your friend!
> >
> > Simply turn binmode on for all files (STDIN/STDOUT) and you'll read
> > and write files raw.
> 
> How do I turn binmode on for all files when using the command line
> options to create an automatic loop?

With the 'open' pragma.

> This is the whole script:
> 
> ==========================
> 
> #!/cygdrive/c/Perl/bin/perl -w -i.bak -p
> #
> 
> # insert processing code here:
> s/A/X/g;
> 
> ==========================
> 
> how do I use binmode here? I thought maybe $ARGVOUT was the hidden
> filename, so I tried inserting 'binmode $ARGVOUT;' before the
> substitution, but it didn't work.

It's ARGVOUT, not $ARGVOUT.

However, you would be better off if it were opened in the right mode to
begin with; thus, write your script as:

   #!/cygdrive/c/Perl/bin/perl -w -i.bak -p
   use open IN => ":raw", OUT => ":raw";
   # insert processing code here:
   y/A/X/;
   __END__

-- 
$a=24;split//,240513;s/\B/ => /for@@=qw(ac ab bc ba cb ca
);{push(@b,$a),($a-=6)^=1 for 2..$a/6x--$|;print "$@[$a%6
]\n";((6<=($a-=6))?$a+=$_[$a%6]-$a%6:($a=pop @b))&&redo;}


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

Date: Sat, 29 Mar 2003 11:46:19 +0100
From: peter pilsl <pilsl_usenet@goldfisch.at>
Subject: ways to split big modules ?
Message-Id: <3e85799d$1@e-post.inode.at>


I've quite a big perlmodule that has about 7000 lines of code.
Imho thats too much lines for a single file, so I try to outsource parts of 
it to external files/modules.

It was easy to exclude parts that were isolated and could easily be 
transformed in objects that are defined in outer modules.

But now I've many methods left that relies on each other.
IMHO the easiest way  would be to just cut/paste the code to external files 
and require this files in the mainfile. Unfortunately mod_perl (which is 
used as perlinterpreter) demands the full path in the require-statements 
and therefore the whole module gets difficult to install.

By now I just exclude the subs in external modules and reimport them by 
'use extmodule' and @ISA=qw (extmodule1, extmodule2 ...) to use them as 
methods for the mainobject.

But as soon as extmodule1 requires subs in extmodule2 troubles begins.

Best way would be to reorganize the whole module and seperate into logical 
objects, but I'd like to hear how other people split big projects into 
several files.

I'm also interested if it costs much extra time if using many small modules 
instead of one big module and if its better to use module-structures like

mymodules::main
mymodules::extra1
mymodules::extra2

or 

mymodules::main
mymodules::main::extra1
mymodules::main::extra2



thnx,
peter


-- 
peter pilsl
pilsl_usenet@goldfisch.at
http://www.goldfisch.at



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

Date: Sat, 29 Mar 2003 13:29:08 +0100
From: Gunnar Hjalmarsson <noreply@gunnar.cc>
Subject: Re: ways to split big modules ?
Message-Id: <b643j7$1hr03$1@ID-184292.news.dfncis.de>

peter pilsl wrote:
> I've quite a big perlmodule that has about 7000 lines of code. Imho
> thats too much lines for a single file, so I try to outsource parts
> of it to external files/modules.
> [snip]
> Unfortunately mod_perl (which is used as perlinterpreter) demands
> the full path in the require-statements and therefore the whole
> module gets difficult to install.

You could include this in the beginning of mymodules::main:

     use lib '/full/path/to/local/library';
     if ($ENV{MOD_PERL}) {
         require mymodules::extra1;
         require mymodules::extra2;
     }

Assuming that the main module is always used or required, that would
load the other modules when mod_perl acknowledges the extra path in
@INC, and requiring a startup.pl file when starting the server
wouldn't be necessary. The only thing you would need to think of when
installing the module is editing the path in the "use lib" statement.

/ Gunnar

-- 
Gunnar Hjalmarsson
Email: http://www.gunnar.cc/cgi-bin/contact.pl



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

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


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