[30812] in Perl-Users-Digest
Perl-Users Digest, Issue: 2057 Volume: 11
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Mon Dec 15 14:09:51 2008
Date: Mon, 15 Dec 2008 11:09:15 -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 Mon, 15 Dec 2008 Volume: 11 Number: 2057
Today's topics:
Re: a simple control in an nntp client <hjp-usenet2@hjp.at>
Re: FAQ 9.4 How do I remove HTML from a string? (David Combs)
Re: Help: How can I parse this properties file? (David Combs)
Re: Help: How can I parse this properties file? <tim@burlyhost.com>
Re: how to force a symbolic link? (David Combs)
Re: how to force a symbolic link? <hjp-usenet2@hjp.at>
Re: how to force a symbolic link? <tim@burlyhost.com>
Re: if ($line == $count++) (David Combs)
Re: if ($line == $count++) <tim@burlyhost.com>
maximum number of concurrent sessions <michaelgang@gmail.com>
Re: maximum number of concurrent sessions <siva0825@gmail.com>
Re: maximum number of concurrent sessions <tim@burlyhost.com>
Re: maximum number of concurrent sessions <tim@burlyhost.com>
Re: maximum number of concurrent sessions xhoster@gmail.com
Re: maximum number of concurrent sessions <michaelgang@gmail.com>
new CPAN modules on Mon Dec 15 2008 (Randal Schwartz)
Re: Noob trying to understand simple Perl grep statemen <daves@orpheusmail.co.uk>
Re: opening a file <rihad@mail.ru>
Re: Using unreferenced labels (David Combs)
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: Mon, 15 Dec 2008 09:34:44 +0100
From: "Peter J. Holzer" <hjp-usenet2@hjp.at>
Subject: Re: a simple control in an nntp client
Message-Id: <slrngkc5l4.md.hjp-usenet2@hrunkner.hjp.at>
On 2008-12-15 01:55, George <george@example.invalid> wrote:
> One thing that happens in perl that doesn't happen in fortran is that
> you're halfway through the program, and a statement like
>
> ...($something, @arts)= ...
>
> creates an array. This would be strictly forbidden in fortran.
As Tad wrote, if you "use strict", you have to declare your variables.
But being able to create your values while you are "halfway through the
program" is a feature, not a bug. If you variables for the smallest
possible scope (possibly just a few lines) it is much easier to see
where the variable is used for. If you have to declare all your
variables at the start of your program, you need to examine your whole
program to see where the variable is used.
hp
------------------------------
Date: Mon, 15 Dec 2008 10:12:24 +0000 (UTC)
From: dkcombs@panix.com (David Combs)
Subject: Re: FAQ 9.4 How do I remove HTML from a string?
Message-Id: <gi5ai8$nrr$1@reader1.panix.com>
In article <lq0206-4c9.ln1@blue.stonehenge.com>,
PerlFAQ Server <brian@stonehenge.com> wrote:
>This is an excerpt from the latest version perlfaq9.pod, which
>comes with the standard Perl distribution. These postings aim to
>reduce the number of repeated questions as well as allow the community
>to review and update the answers. The latest version of the complete
>perlfaq is at http://faq.perl.org .
>
>--------------------------------------------------------------------
>
>9.4: How do I remove HTML from a string?
>
> The most correct way (albeit not the fastest) is to use HTML::Parser
> from CPAN. Another mostly correct way is to use HTML::FormatText which
> not only removes HTML but also attempts to do a little simple formatting
> of the resulting plain text.
>
> Many folks attempt a simple-minded regular expression approach, like
> "s/<.*?>//g", but that fails in many cases because the tags may continue
> over line breaks, they may contain quoted angle-brackets, or HTML
> comment may be present. Plus, folks forget to convert entities--like
> "<" for example.
>
> Here's one "simple-minded" approach, that works for most files:
>
> #!/usr/bin/perl -p0777
> s/<(?:[^>'"]*|(['"]).*?\1)*>//gs
Since part of the job-description of a perl faq is to teach
a bit of perl, about explaining how it works would be a
nice addition.
David
>
> If you want a more complete solution, see the 3-stage striphtml program
> in http://www.cpan.org/authors/Tom_Christiansen/scripts/striphtml.gz .
>
> Here are some tricky cases that you should think about when picking a
> solution:
>
> <IMG SRC = "foo.gif" ALT = "A > B">
>
> <IMG SRC = "foo.gif"
> ALT = "A > B">
>
> <!-- <A comment> -->
>
> <script>if (a<b && a>c)</script>
>
> <# Just data #>
>
> <![INCLUDE CDATA [ >>>>>>>>>>>> ]]>
>
> If HTML comments include other tags, those solutions would also break on
> text like this:
>
> <!-- This section commented out.
> <B>You can't see me!</B>
> -->
>
>
>
>--------------------------------------------------------------------
>
>The perlfaq-workers, a group of volunteers, maintain the perlfaq. They
>are not necessarily experts in every domain where Perl might show up,
>so please include as much information as possible and relevant in any
>corrections. The perlfaq-workers also don't have access to every
>operating system or platform, so please include relevant details for
>corrections to examples that do not work on particular platforms.
>Working code is greatly appreciated.
>
>If you'd like to help maintain the perlfaq, see the details in
>perlfaq.pod.
------------------------------
Date: Mon, 15 Dec 2008 10:41:31 +0000 (UTC)
From: dkcombs@panix.com (David Combs)
Subject: Re: Help: How can I parse this properties file?
Message-Id: <gi5c8r$qmq$2@reader1.panix.com>
In article <r4fYk.5050$zQ3.2423@newsfe12.iad>,
Tim Greer <tim@burlyhost.com> wrote:
>David Combs wrote:
>
>> "Mastering Regular Expressions", 2nd edition,
>> by Jeffrey Friedl, O'Reilly. (num pages: 460)
>
>Probably, the third edition is a better suggestion? (542 pages, and
>updated)
Thank you! I had no idea there was one.
I'll get it -- but briefly, roughly, what did he add in
those 80 new pages?
Thanks!
David
------------------------------
Date: Mon, 15 Dec 2008 09:15:57 -0800
From: Tim Greer <tim@burlyhost.com>
Subject: Re: Help: How can I parse this properties file?
Message-Id: <ihw1l.4994$cL7.2975@newsfe22.iad>
David Combs wrote:
> In article <r4fYk.5050$zQ3.2423@newsfe12.iad>,
> Tim Greer <tim@burlyhost.com> wrote:
>>David Combs wrote:
>>
>>> "Mastering Regular Expressions", 2nd edition,
>>> by Jeffrey Friedl, O'Reilly. (num pages: 460)
>>
>>Probably, the third edition is a better suggestion? (542 pages, and
>>updated)
>
> Thank you! I had no idea there was one.
>
> I'll get it -- but briefly, roughly, what did he add in
> those 80 new pages?
>
> Thanks!
>
> David
I actually have no idea. The 3rd might not be better than the 2nd
edition, but the newer versions of books like this are almost always
better (usually also contain errata/fixes and more up to date
examples).
--
Tim Greer, CEO/Founder/CTO, BurlyHost.com, Inc.
Shared Hosting, Reseller Hosting, Dedicated & Semi-Dedicated servers
and Custom Hosting. 24/7 support, 30 day guarantee, secure servers.
Industry's most experienced staff! -- Web Hosting With Muscle!
------------------------------
Date: Mon, 15 Dec 2008 10:29:33 +0000 (UTC)
From: dkcombs@panix.com (David Combs)
Subject: Re: how to force a symbolic link?
Message-Id: <gi5bic$qmq$1@reader1.panix.com>
In article <slrngj39t1.86n.whynot@orphan.zombinet>,
Eric Pozharski <whynot@pozharski.name> wrote:
>On 2008-11-29, John W. Krahn <someone@example.com> wrote:
>> Peng Yu wrote:
>>>
>>> In shell, 'ln' has an option -f. I'm wondering if there is such option
>>> for symlink in perl.
>>
>> -e 'oldlink' and unlink 'oldlink';
>> symlink 'yourfile', 'oldlink' or die "oldlink: $!";
>
Where's the race condition?
Does unlink return before the unlinking has been completed?
Thanks,
David
>If my understanding of unlink(2) and symlink(2) is correct either one
>would fail or both. Anyway there's race, so:
>
> unlink 'oldlink;
> symlink 'yourfile', 'oldlink' or die $!;
>
>Then what's wrong with that:
>
> #/usr/bin/perl
> use strict;
> use warnings;
> use File::Temp qw|tempfile|;
> use File::Basename;
> my ($link, $yourfile) = ( @ARGV );
> my ($fd, $fn) = ( dirname($link), basename $link );
> my($fh), $fn = tempfile "$fn.XXXXXX", DIR => $fd;
> unlink $fn or die "unlink: $!";
> symlink $yourfile, $fn or die "symlink: die $!";
> close $fd;
> rename $fn, $link or die "rename: $!";
> __END__
>
>Did I really needed to keep I<$fn> open?
>
>
>--
>Torvalds' goal for Linux is very simple: World Domination
------------------------------
Date: Mon, 15 Dec 2008 12:16:51 +0100
From: "Peter J. Holzer" <hjp-usenet2@hjp.at>
Subject: Re: how to force a symbolic link?
Message-Id: <slrngkcf54.25b.hjp-usenet2@hrunkner.hjp.at>
On 2008-12-15 10:29, David Combs <dkcombs@panix.com> wrote:
> In article <slrngj39t1.86n.whynot@orphan.zombinet>,
> Eric Pozharski <whynot@pozharski.name> wrote:
>>On 2008-11-29, John W. Krahn <someone@example.com> wrote:
>>> Peng Yu wrote:
>>>> In shell, 'ln' has an option -f. I'm wondering if there is such option
>>>> for symlink in perl.
>>>
>>> -e 'oldlink' and unlink 'oldlink';
>>> symlink 'yourfile', 'oldlink' or die "oldlink: $!";
>>
>
> Where's the race condition?
>
> Does unlink return before the unlinking has been completed?
No, but another process could create a new 'oldlink' between the time
unlink returns and the time symlink is called.
(link -f has the same problem, of course)
hp
------------------------------
Date: Mon, 15 Dec 2008 09:20:06 -0800
From: Tim Greer <tim@burlyhost.com>
Subject: Re: how to force a symbolic link?
Message-Id: <alw1l.4995$cL7.807@newsfe22.iad>
David Combs wrote:
> In article <slrngj39t1.86n.whynot@orphan.zombinet>,
> Eric Pozharski <whynot@pozharski.name> wrote:
>>On 2008-11-29, John W. Krahn <someone@example.com> wrote:
>>> Peng Yu wrote:
>>>>
>>>> In shell, 'ln' has an option -f. I'm wondering if there is such
>>>> option for symlink in perl.
>>>
>>> -e 'oldlink' and unlink 'oldlink';
>>> symlink 'yourfile', 'oldlink' or die "oldlink: $!";
>>
>
> Where's the race condition?
>
> Does unlink return before the unlinking has been completed?
>
> Thanks,
>
> David
>
Any time you do a test with something like "if file doesn't exist,
overwrite it", without doing locking (one of many examples), you create
a race condition. If the script has a bug due to that, or if someone
intentionally exploits that small window of time, you could have
problems. Always ask yourself "what happens if something creates that
file between the time it checks if it exists and the time I remove it,
overwrite it or work with it, and what methods you have available to
prevent that.
--
Tim Greer, CEO/Founder/CTO, BurlyHost.com, Inc.
Shared Hosting, Reseller Hosting, Dedicated & Semi-Dedicated servers
and Custom Hosting. 24/7 support, 30 day guarantee, secure servers.
Industry's most experienced staff! -- Web Hosting With Muscle!
------------------------------
Date: Mon, 15 Dec 2008 11:12:41 +0000 (UTC)
From: dkcombs@panix.com (David Combs)
Subject: Re: if ($line == $count++)
Message-Id: <gi5e39$qmq$4@reader1.panix.com>
In article <t6JYk.6061$v37.4888@newsfe01.iad>,
Tim Greer <tim@burlyhost.com> wrote:
>David Combs wrote:
>
>
>That debate would more accurately be about news readers, rather than
>archiving usenet articles. Speaking of, my news reader is configured
>(by me) to not display already "read" usenet articles that are over
>30-60 days old, so I'm unsure why you've been replying to such old
>articles in this group today? It makes it difficult to follow (and I
>really dislike google groups, so I'm not going there to check the
>history of this thread :-)
It's because I don't read the group every day -- maybe not
for a couple of weeks. (I gotta allocate a good stretch
of time for it -- because the posts here are **so good**,
my reading speed really slows down, too.)
David
------------------------------
Date: Mon, 15 Dec 2008 09:21:07 -0800
From: Tim Greer <tim@burlyhost.com>
Subject: Re: if ($line == $count++)
Message-Id: <7mw1l.4996$cL7.4149@newsfe22.iad>
David Combs wrote:
> It's because I don't read the group every day -- maybe not
> for a couple of weeks.
I noticed that. :-) Not a problem.
--
Tim Greer, CEO/Founder/CTO, BurlyHost.com, Inc.
Shared Hosting, Reseller Hosting, Dedicated & Semi-Dedicated servers
and Custom Hosting. 24/7 support, 30 day guarantee, secure servers.
Industry's most experienced staff! -- Web Hosting With Muscle!
------------------------------
Date: Mon, 15 Dec 2008 05:28:44 -0800 (PST)
From: david <michaelgang@gmail.com>
Subject: maximum number of concurrent sessions
Message-Id: <f79d578f-fed7-4967-990c-86ea369e244b@s9g2000prm.googlegroups.com>
HI all,
I have got a requirement, when the number of concurrent sessions a
certain web site has exceeds a number than i should send a response
that i can not give now the service and that the user should try in a
couple of minutes.
My questions are:
Is this something I should handle in the perl code or more upstream?
If yes, how can i handle it in perl ?
I tried to make google searches on this issue and did not find an
answer.
Thanks in advance,
David
------------------------------
Date: Mon, 15 Dec 2008 05:45:36 -0800 (PST)
From: "siva0825@gmail.com" <siva0825@gmail.com>
Subject: Re: maximum number of concurrent sessions
Message-Id: <1addecb3-75e9-4002-8f11-bf13257491cb@b1g2000yqg.googlegroups.com>
On Dec 15, 8:28=A0am, david <michaelg...@gmail.com> wrote:
> HI all,
>
> I have got a requirement, when the number of concurrent sessions a
> certain web site has exceeds a number than i should send a response
> that i can not give now the service and that the user should try in a
> couple of minutes.
>
> My questions are:
>
> Is this something I should handle in the perl code =A0or more upstream?
>
> If yes, how can i handle it in perl ?
>
> I tried to make google searches on this issue and did not find an
> answer.
>
> Thanks in advance,
> David
I think you need something like this:
use Win32::Net::Session;
my $SESS =3D Win32::Net::Session->new($server, $level, [$clientname,
$username]);
my $ret =3D $SESS->GetSessionInfo();
my $numsessions =3D $SESS->NumberofSessions();
if($numsessions =3D=3D 0) {print "No Clients connected\n"; exit; }
print "Number of Sessions: " . $numsessions . "\n";
Take a look at:
http://search.cpan.org/~rpagitsch/Win32-Net-Session-0.02/Session.pm
------------------------------
Date: Mon, 15 Dec 2008 09:23:40 -0800
From: Tim Greer <tim@burlyhost.com>
Subject: Re: maximum number of concurrent sessions
Message-Id: <wow1l.4997$cL7.624@newsfe22.iad>
siva0825@gmail.com wrote:
> I think you need something like this:
>
> use Win32::Net::Session;
We don't know what web server or platform the OP is using. Not that you
didn't guess right (I have no idea).
--
Tim Greer, CEO/Founder/CTO, BurlyHost.com, Inc.
Shared Hosting, Reseller Hosting, Dedicated & Semi-Dedicated servers
and Custom Hosting. 24/7 support, 30 day guarantee, secure servers.
Industry's most experienced staff! -- Web Hosting With Muscle!
------------------------------
Date: Mon, 15 Dec 2008 09:26:46 -0800
From: Tim Greer <tim@burlyhost.com>
Subject: Re: maximum number of concurrent sessions
Message-Id: <rrw1l.58979$zQ3.45739@newsfe12.iad>
david wrote:
> HI all,
>
> I have got a requirement, when the number of concurrent sessions a
> certain web site has exceeds a number than i should send a response
> that i can not give now the service and that the user should try in a
> couple of minutes.
>
> My questions are:
>
> Is this something I should handle in the perl code or more upstream?
>
> If yes, how can i handle it in perl ?
>
> I tried to make google searches on this issue and did not find an
> answer.
>
> Thanks in advance,
> David
What web server and platform are you using? For example, you could do
this with Apache. Depending on exactly what you want to limit (just
CGI and/or PHP, etc.) or all files (images, text/HTML), could depend on
the solution, but the web server aspect is probably best (for example,
limiting the number of processes a user can run at once is a common
setting in Apache, including limiting how much memory, cpu, how long
the process runs, and, the total processes allowed using the Rlimit*
directives -- which sounds like what you want -- but this is for CGI).
So, it sounds like you want a web server/Apache group (depending on
your platform and web server software).
--
Tim Greer, CEO/Founder/CTO, BurlyHost.com, Inc.
Shared Hosting, Reseller Hosting, Dedicated & Semi-Dedicated servers
and Custom Hosting. 24/7 support, 30 day guarantee, secure servers.
Industry's most experienced staff! -- Web Hosting With Muscle!
------------------------------
Date: 15 Dec 2008 17:39:41 GMT
From: xhoster@gmail.com
Subject: Re: maximum number of concurrent sessions
Message-Id: <20081215123827.259$D6@newsreader.com>
david <michaelgang@gmail.com> wrote:
> HI all,
>
> I have got a requirement, when the number of concurrent sessions a
> certain web site has exceeds a number than i should send a response
> that i can not give now the service and that the user should try in a
> couple of minutes.
How is Perl currently being used at this certain web site?
>
> My questions are:
>
> Is this something I should handle in the perl code or more upstream?
Probably more upstream. If it is only a particular Perl code (CGI script,
etc.) that needs to be throttled, then maybe do it in Perl.
>
> If yes, how can i handle it in perl ?
To prevent more than two instances of a certain cgi from running at once,
I do something like this:
sub getLockfile {
foreach (1..200) {
foreach my $i ( 1,2 ) { # only let 2 run, as it takes 0.7 out of 2
Gig.
open my $file, ">_memory_lock_$i" or die $!;
if (flock $file,LOCK_EX|LOCK_NB) {
return $file; # return the handle itself, someone needs to hold
# onto for the length of the program.
}
}
sleep 1;
};
return; # caller must detect and do the right thing.
}
I could do more error checking, for example to make sure flock fails due
to EWOULDBLOCK rather than something else. You probably want to remove
the outer loop and have it fail immediately.
Xho
--
-------------------- http://NewsReader.Com/ --------------------
The costs of publication of this article were defrayed in part by the
payment of page charges. This article must therefore be hereby marked
advertisement in accordance with 18 U.S.C. Section 1734 solely to indicate
this fact.
------------------------------
Date: Mon, 15 Dec 2008 10:18:27 -0800 (PST)
From: david <michaelgang@gmail.com>
Subject: Re: maximum number of concurrent sessions
Message-Id: <69c7cfaa-767b-4417-9107-bce3a55bcda4@p2g2000prf.googlegroups.com>
On Dec 15, 7:39=A0pm, xhos...@gmail.com wrote:
> david <michaelg...@gmail.com> wrote:
> > HI all,
>
> > I have got a requirement, when the number of concurrent sessions a
> > certain web site has exceeds a number than i should send a response
> > that i can not give now the service and that the user should try in a
> > couple of minutes.
>
> How is Perl currently being used at this certain web site?
>
>
>
> > My questions are:
>
> > Is this something I should handle in the perl code =A0or more upstream?
>
> Probably more upstream. =A0If it is only a particular Perl code (CGI scri=
pt,
> etc.) that needs to be throttled, then maybe do it in Perl.
>
>
>
> > If yes, how can i handle it in perl ?
>
> To prevent more than two instances of a certain cgi from running at once,
> I do something like this:
>
> sub getLockfile {
> =A0 foreach (1..200) {
> =A0 =A0 foreach my $i ( 1,2 ) { =A0# only let 2 run, as it takes 0.7 out =
of 2
> =A0 =A0 Gig.
> =A0 =A0 =A0 open my $file, =A0">_memory_lock_$i" or die $!;
> =A0 =A0 =A0 if (flock $file,LOCK_EX|LOCK_NB) {
> =A0 =A0 =A0 =A0 return $file; # return the handle itself, someone needs t=
o hold
> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 # onto for the length of the =
program.
> =A0 =A0 =A0 }
> =A0 =A0 }
> =A0 =A0 sleep 1;
> =A0 };
> =A0 return; =A0# caller must detect and do the right thing.
>
> }
>
> I could do more error checking, for example to make sure flock fails due
> to EWOULDBLOCK rather than something else. =A0You probably want to remove
> the outer loop and have it fail immediately.
>
> Xho
>
> --
> --------------------http://NewsReader.Com/--------------------
> The costs of publication of this article were defrayed in part by the
> payment of page charges. This article must therefore be hereby marked
> advertisement in accordance with 18 U.S.C. Section 1734 solely to indicat=
e
> this fact.
Sorry that i did not write the platform. it is apache on linux. I am
running a couple of cgis on the machine and it could be that the
limitations for each cgi are different. I think that the apache can
just be configured in general for all cgis (but i'll have to make
homework and read the apache manual). The perl solution would solve
the problem, but that would mean that i have to manage the session in
perl alone.
Thanks for your comments !!!
------------------------------
Date: Mon, 15 Dec 2008 05:42:24 GMT
From: merlyn@stonehenge.com (Randal Schwartz)
Subject: new CPAN modules on Mon Dec 15 2008
Message-Id: <KBwL6o.6zn@zorch.sf-bay.org>
The following modules have recently been added to or updated in the
Comprehensive Perl Archive Network (CPAN). You can install them using the
instructions in the 'perlmodinstall' page included with your Perl
distribution.
App-ZofCMS-Plugin-ImageGallery-0.0101
http://search.cpan.org/~zoffix/App-ZofCMS-Plugin-ImageGallery-0.0101/
CRUD-like plugin for managing images.
----
App-ZofCMS-Plugin-ImageGallery-0.0201
http://search.cpan.org/~zoffix/App-ZofCMS-Plugin-ImageGallery-0.0201/
CRUD-like plugin for managing images.
----
B-Compiling-0.02
http://search.cpan.org/~flora/B-Compiling-0.02/
Expose PL_compiling to perl
----
CPAN-Testers-Common-DBUtils-0.01
http://search.cpan.org/~barbie/CPAN-Testers-Common-DBUtils-0.01/
Basic Database Wrapper
----
CPAN-Testers-ParseReport-0.0.20
http://search.cpan.org/~andk/CPAN-Testers-ParseReport-0.0.20/
parse reports to www.cpantesters.org from various sources
----
CPAN-Testers-WWW-Reports-Mailer-0.08
http://search.cpan.org/~barbie/CPAN-Testers-WWW-Reports-Mailer-0.08/
CPAN Testers Reports Mailer
----
Catalyst-Action-Fixup-XHTML-0.01
http://search.cpan.org/~fayland/Catalyst-Action-Fixup-XHTML-0.01/
Catalyst action which serves application/xhtml+xml content if the browser accepts it.
----
Catalyst-View-Seamstress-2.0
http://search.cpan.org/~tbone/Catalyst-View-Seamstress-2.0/
HTML::Seamstress View Class for Catalyst
----
Catalyst-View-TT-XHTML-1.003
http://search.cpan.org/~bobtfish/Catalyst-View-TT-XHTML-1.003/
A sub-class of the standard TT view which serves application/xhtml+xml content if the browser accepts it.
----
Catalyst-View-TT-XHTML-1.004
http://search.cpan.org/~bobtfish/Catalyst-View-TT-XHTML-1.004/
A sub-class of the standard TT view which serves application/xhtml+xml content if the browser accepts it.
----
Chart-Clicker-2.15
http://search.cpan.org/~gphat/Chart-Clicker-2.15/
Powerful, extensible charting.
----
Chooser-1.1.7
http://search.cpan.org/~vvelox/Chooser-1.1.7/
A system for choosing a value for something. Takes a string composed of various tests, arguements, and etc and returns a value based on it.
----
Data-Util-0.43
http://search.cpan.org/~gfuji/Data-Util-0.43/
A selection of utilities for data and data types
----
Devel-PerlySense-0.0167
http://search.cpan.org/~johanl/Devel-PerlySense-0.0167/
Perl IDE backend with Emacs frontend
----
Devel-PerlySense-0.0168
http://search.cpan.org/~johanl/Devel-PerlySense-0.0168/
Perl IDE backend with Emacs frontend
----
LWP-UserAgent-POE-0.02
http://search.cpan.org/~mschilli/LWP-UserAgent-POE-0.02/
Drop-in LWP::UserAgent replacement in POE environments
----
Lingua-Translate-Google-0.04
http://search.cpan.org/~dylan/Lingua-Translate-Google-0.04/
Translation back-end for Google's beta translation service.
----
Locale-Maketext-Lexicon-0.76
http://search.cpan.org/~drtech/Locale-Maketext-Lexicon-0.76/
Use other catalog formats in Maketext
----
Math-GSL-0.16
http://search.cpan.org/~leto/Math-GSL-0.16/
Perl interface to the GNU Scientific Library (GSL)
----
MojoX-Fixup-XHTML-0.02
http://search.cpan.org/~fayland/MojoX-Fixup-XHTML-0.02/
serves application/xhtml+xml content for Mojo
----
MojoX-Locale-Maketext-0.03
http://search.cpan.org/~vti/MojoX-Locale-Maketext-0.03/
Locale::Maketext implementation
----
MooseX-Meta-Attribute-Lvalue-0.05
http://search.cpan.org/~ctbrown/MooseX-Meta-Attribute-Lvalue-0.05/
Immplements lvalue attributes via meta-attribute trait
----
Net-LastFM-0.33
http://search.cpan.org/~lbrocard/Net-LastFM-0.33/
A simple interface to the Last.fm API
----
ORLite-1.16
http://search.cpan.org/~adamk/ORLite-1.16/
Extremely light weight SQLite-specific ORM
----
ORLite-Migrate-0.01
http://search.cpan.org/~adamk/ORLite-Migrate-0.01/
Extremely light weight SQLite-specific schema migration
----
POE-Component-Client-Pastebot-1.08
http://search.cpan.org/~bingos/POE-Component-Client-Pastebot-1.08/
Interact with Bot::Pastebot web services from POE.
----
POEIKC-Plugin-GlobalQueue-0.02
http://search.cpan.org/~suzuki/POEIKC-Plugin-GlobalQueue-0.02/
POE and IKC based queue server.
----
Padre-0.21
http://search.cpan.org/~smueller/Padre-0.21/
Perl Application Development and Refactoring Environment
----
Padre-Plugin-CPAN-0.07
http://search.cpan.org/~fayland/Padre-Plugin-CPAN-0.07/
CPAN in Padre
----
Padre-Plugin-Tidy-0.03
http://search.cpan.org/~fayland/Padre-Plugin-Tidy-0.03/
tidy html/xml in Padre
----
Padre-Plugin-Validator-0.05
http://search.cpan.org/~fayland/Padre-Plugin-Validator-0.05/
validate HTML/CSS in Padre
----
Parse-ErrorString-Perl-0.02
http://search.cpan.org/~pshangov/Parse-ErrorString-Perl-0.02/
Parse error messages from the perl interpreter
----
Parse-Marpa-1.000000
http://search.cpan.org/~jkegl/Parse-Marpa-1.000000/
Generate Parsers from any BNF grammar
----
Parse-Win32Registry-0.41
http://search.cpan.org/~jmacfarla/Parse-Win32Registry-0.41/
Parse Windows Registry Files
----
Syntax-Highlight-Perl6-0.025
http://search.cpan.org/~azawawi/Syntax-Highlight-Perl6-0.025/
a Perl 6 syntax highlighter
----
Test-WWW-Selenium-1.16
http://search.cpan.org/~lukec/Test-WWW-Selenium-1.16/
Test applications using Selenium Remote Control
----
Text-SpellChecker-0.04
http://search.cpan.org/~bduggan/Text-SpellChecker-0.04/
OO interface for spell-checking a block of text
----
WWW-Search-Jobs-2.028
http://search.cpan.org/~mthurn/WWW-Search-Jobs-2.028/
----
WWW-Search-Lycos-2.222
http://search.cpan.org/~mthurn/WWW-Search-Lycos-2.222/
class for searching www.lycos.com
----
WWW-Translate-Apertium-0.09
http://search.cpan.org/~enell/WWW-Translate-Apertium-0.09/
Open source machine translation
----
XML-Compile-SOAP-Daemon-0.12
http://search.cpan.org/~markov/XML-Compile-SOAP-Daemon-0.12/
SOAP accepting server
----
makepp-1.50.081214
http://search.cpan.org/~pfeiffer/makepp-1.50.081214/
Compatible but improved replacement for make
----
perl-5.8.9
http://search.cpan.org/~nwclark/perl-5.8.9/
Practical Extraction and Report Language
If you're an author of one of these modules, please submit a detailed
announcement to comp.lang.perl.announce, and we'll pass it along.
This message was generated by a Perl program described in my Linux
Magazine column, which can be found on-line (along with more than
200 other freely available past column articles) at
http://www.stonehenge.com/merlyn/LinuxMag/col82.html
print "Just another Perl hacker," # the original
--
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc.
See http://methodsandmessages.vox.com/ for Smalltalk and Seaside discussion
------------------------------
Date: Mon, 15 Dec 2008 14:22:51 +0000 (GMT)
From: Dave Stratford <daves@orpheusmail.co.uk>
Subject: Re: Noob trying to understand simple Perl grep statement
Message-Id: <500e1a213adaves@orpheusmail.co.uk>
In article
<7fed4465-73c9-4b5d-859a-185fd9d060b0@a26g2000prf.googlegroups.com>,
C.DeRykus <ced@blv-sam-01.ca.boeing.com> wrote:
> On Dec 13, 8:09 pm, gba...@hiwaay.net (Greg Bacon) wrote:
> > In article <86skp05d7o....@blue.stonehenge.com>,
> > Randal L. Schwartz <mer...@stonehenge.com> wrote:
> >
> > : I still regret inventing JAPHs, which encouraged obfuperl, and in
> > : some sense was the motivation for Perl golf. All three items
> > : today harm Perl's public perception more than they help, and I'm
> > : sad for that.
> >
> > Don't be a puritan. Perl is fun, and that's great! Snobs who look
> > down their noses at jam sessions aren't worth worrying about.
> >
> I agree totally. Dismissive comments are for snobs -- Perl brings fun
> back to programming. And seriously, an "Obfuscated C Contest" or a
> Perl "golf" contest is often
> serendipitous because you're looking in a language's nooks and
> crannies to explore its capabilities. At times the bugs and mis-
> features of a languare are exposed; at others, you reveal how the
> gears and gizmos work under the covers. The "Obfuscated C contest"
> regularly attracts world class C programmers. Larry's won a couple of
> times as I recall.
> Just think.. Perl may have been the result of his mis-spent
> youth :)
That's all very well, and indeed amusing and fun in the right place.
Unfortunately people do write obfuscated code in the wrong place and at
the wrong time. Sadly, about four years ago, and after repeated warnings,
I eventually had to sack someone who continued to write obfuscated code in
our application programs. He was merely one of a team of five programmers
working on the same system, all of whom at some point would have had to
amend that code. There are people on that team now who were not in the
company at the time, those programs are still being updated and amended,
and it would have been grossly unfair to them, and the rest of the team,
to have allowed him to continue to do so.
Be careful, be sensible!
Dave
--
Dave Stratford ZFCA
http://daves.orpheusweb.co.uk/
Hexagon Systems Limited - Experts in VME systems development
------------------------------
Date: Sun, 14 Dec 2008 22:39:22 -0800 (PST)
From: rihad <rihad@mail.ru>
Subject: Re: opening a file
Message-Id: <659dd4f8-1bf1-417d-8097-96c8e2825877@k24g2000pri.googlegroups.com>
On Dec 15, 12:48 am, xhos...@gmail.com wrote:
> rihad <ri...@mail.ru> wrote:
> > This function is from a daemon (long-lived process):
>
> > sub foo($) {
> > my ($command) = shift;
>
> > BEGIN {
> > open(FOO, ">/var/tmp/foo") or return;
>
> Since the BEGIN isn't actually happening during the sub call,
> it is not clear to me what the "or return" is going to do in
> case of a failure.
>
Yeah, I know, but since I'm playing both with and without BEGIN/END I
left return there, as I don't want die to stop the daemon (I know I
can catch die outside, but decided to keep things simple for now. With
BEGIN I'll probably use die when testing is over).
> Are you sure your problem is not in the reader daemon? I can not reproduce
> your problem using your code above (and the driver below), and using "cat"
> as the reader.
>
Bingo! cat -u works, but tail -f (the real reader frontend) seems to
buffer its input... and there's no option to turn off that buffering
AFAIK. I had never thought I should try another reader. Thanks for the
pointer. I must use tail -f because I don't want the real daemon to
exit on EOF (as there are several writers, not only the one shown
here, but also short-lived processes). But since the Perl daemon never
closes its writing part of the FIFO when BEGIN/END are used, cat
should never exit anyway if I make sure the daemon runs before short-
lived writers. Now with cat in place everything works, so this wasn't
a misunderstanding of Perl on my part, but rather of tail -f Thanks to
everyone too.
------------------------------
Date: Mon, 15 Dec 2008 10:52:05 +0000 (UTC)
From: dkcombs@panix.com (David Combs)
Subject: Re: Using unreferenced labels
Message-Id: <gi5csl$qmq$3@reader1.panix.com>
In article <ggsakf$13ke$1@agate.berkeley.edu>,
Ilya Zakharevich <nospam-abuse@ilyaz.org> wrote:
>[A complimentary Cc of this posting was sent to
>David Combs
><dkcombs@panix.com>], who wrote in article <ggrm82$8p4$2@reader1.panix.com>:
>> >I think I wrote something about this... perlguts/"Compliled code"
>
>> Could you flesh out a bit what we might google(groups) for
>> to find that discussion?
>
>Sorry, David, it looks like you trimmed too much, so I do not know
>which "discussion" you mean...
>
>What I meant was (after fixing misprints) that you can do
>
> perldoc perlguts
>
>and look for the section on "Compiled code".
>
>Yours,
>Ilya
Belatedly, Thanks!
David
------------------------------
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.
NOTE: due to the current flood of worm email banging on ruby, the smtp
server on ruby has been shut off until further notice.
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 V11 Issue 2057
***************************************