[22077] in Perl-Users-Digest
Perl-Users Digest, Issue: 4299 Volume: 10
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Sat Dec 21 03:05:44 2002
Date: Sat, 21 Dec 2002 00:05:09 -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, 21 Dec 2002 Volume: 10 Number: 4299
Today's topics:
advice - gui-ish programming <web0001@flactem.com>
Re: advice - gui-ish programming <lusol@Pandora.cc.lehigh.edu>
Re: advice - gui-ish programming <web0001@flactem.com>
Re: enviroment variable set <family2@aracnet.com>
Re: enviroment variable set <mgjv@tradingpost.com.au>
Re: Getting perl to work on XP. <wsegrave@mindspring.com>
Re: incorporating off-site content <bashbrothers@cox.net>
Re: incorporating off-site content <me@privacy.net>
Re: Mail::POP3Client vs. Sockets networking ? <usenet_poster_a@tranzoa.com>
OCR Module? (Graham Knight)
Performance for my roguelike <noone@nowhere.com>
Re: Performance for my roguelike <uri@stemsystems.com>
Re: php and perl <planb@newsreaders.com>
Regex [1-9] vs \d <trh411@earthlink.net>
Re: Regex [1-9] vs \d <krahnj@acm.org>
Re: Regex [1-9] vs \d <trh411@earthlink.net>
REgex quesion [^-] <dblood@2c-b.net>
Re: REgex quesion [^-] (Jay Tilton)
Re: REgex quesion [^-] (Walter Roberson)
Re: REgex quesion [^-] <krahnj@acm.org>
Shroud+ Perl source code obfuscator... <andrzej@chaeron.spamicide.com>
Re: Shroud+ Perl source code obfuscator... <uri@stemsystems.com>
Re: Shroud+ Perl source code obfuscator... (Tad McClellan)
Re: Shroud+ Perl source code obfuscator... <andrzej@chaeron.spamicide.com>
Re: Shroud+ Perl source code obfuscator... <uri@stemsystems.com>
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: 21 Dec 2002 01:34:33 GMT
From: kevin <web0001@flactem.com>
Subject: advice - gui-ish programming
Message-Id: <3E03C573.5020605@flactem.com>
Hey All,
I'm totally fed up with the M$ platform, and I want to learn to program
gui apps for linux. I've used Delphi (pascal, don't laugh: it was
required for a class) in the past to do M$ Winblows 95 programming, but
that was some time ago. In my job as a sys admin, I've been using perl,
and have grown to like this lang. I'm curious if there is any way to
write gui apps for x-windows using perl. I did a quick scan at the CPAN
site (from Larry's website), but couldn't see anything in the FAQs.
I've got descent advice from this group from time to time, so I thought
I'd request here. If there's a good way to do this, can someone here
point me in the right direction? (A FM to RT or a pod somewhere?)
Thanks,
Kevin
------------------------------
Date: 21 Dec 2002 01:43:57 GMT
From: "Stephen O. Lidie" <lusol@Pandora.cc.lehigh.edu>
Subject: Re: advice - gui-ish programming
Message-Id: <au0h0t$kvc@fidoii.CC.Lehigh.EDU>
kevin <web0001@flactem.com> wrote:
> Hey All,
> I'm totally fed up with the M$ platform, and I want to learn to program
> gui apps for linux. I've used Delphi (pascal, don't laugh: it was
> required for a class) in the past to do M$ Winblows 95 programming, but
> that was some time ago. In my job as a sys admin, I've been using perl,
> and have grown to like this lang. I'm curious if there is any way to
> write gui apps for x-windows using perl. I did a quick scan at the CPAN
> site (from Larry's website), but couldn't see anything in the FAQs.
> I've got descent advice from this group from time to time, so I thought
> I'd request here. If there's a good way to do this, can someone here
> point me in the right direction? (A FM to RT or a pod somewhere?)
> Thanks,
> Kevin
Visit:
comp.lang.perl.tk
http://www.Lehigh.EDU/~sol0/ptk/ptk.html
Steve
--
@_=map{eval"100${_}"}split/!/,'/5!*2!+$]!/10+$]';use Tk;$m=tkinit;$t='just an'.
'other perl hacker';$z='createText';$c=$m->Canvas(-wi,$_[1],-he,25)->grid;$c->$
z(@_[2,3],-te,$t,-fi,'gray50');$c->$z($_[2]-$],$_[3]-$],-te,$t);$m->bind('<En'.
'ter>',sub{$y=int(rand($m->screenheight));$m->geometry("+$y+$y")});MainLoop;
------------------------------
Date: 21 Dec 2002 02:27:05 GMT
From: kevin <web0001@flactem.com>
Subject: Re: advice - gui-ish programming
Message-Id: <3E03D1C4.7090803@flactem.com>
Cool. Thanks muchly!
Kevin
Stephen O. Lidie wrote:
> kevin <web0001@flactem.com> wrote:
>
>>Hey All,
>>I'm totally fed up with the M$ platform, and I want to learn to program
>>gui apps for linux. I've used Delphi (pascal, don't laugh: it was
>>required for a class) in the past to do M$ Winblows 95 programming, but
>>that was some time ago. In my job as a sys admin, I've been using perl,
>>and have grown to like this lang. I'm curious if there is any way to
>>write gui apps for x-windows using perl. I did a quick scan at the CPAN
>>site (from Larry's website), but couldn't see anything in the FAQs.
>>I've got descent advice from this group from time to time, so I thought
>>I'd request here. If there's a good way to do this, can someone here
>>point me in the right direction? (A FM to RT or a pod somewhere?)
>>Thanks,
>>Kevin
>>
>
> Visit:
>
> comp.lang.perl.tk
> http://www.Lehigh.EDU/~sol0/ptk/ptk.html
>
> Steve
>
------------------------------
Date: Fri, 20 Dec 2002 21:06:48 -0600
From: Abernathey Family <family2@aracnet.com>
Subject: Re: enviroment variable set
Message-Id: <3E03DAC8.C7125559@aracnet.com>
Tad McClellan wrote:
>
> Abernathey Family <family2@aracnet.com> wrote:
> > Anno Siegel wrote something moderately useful:
> >> According to James Hou <happier_tj@hotmail.com>:
> >> > > happier wrote:
> >> > > > I need to run my perl program in cron job and before running it must
> >> > > > set some enviroment variable,so I write a shell script as following
>
> >> > So I have to set the
> >> > variables in a shell script, and then from that shell script call the
> >>
> >> The "shell script" might as well be another Perl script, for that matter.
>
> > You cannot do it
> > with a Perl script.
>
> Yes you can:
>
> $ENV{PERL5LIB} = '/some/path';
> system 'prog_that_uses_modules_not_in_standard_place';
--snip--
No you can't. Specifically the LD_LIBRARY_PATH path variable in Linux,
which you need to set if you trying to get executables, i.e.
wonderful-C-junk, from someplace else.
------------------------------
Date: Sat, 21 Dec 2002 17:05:00 +1100
From: Martien Verbruggen <mgjv@tradingpost.com.au>
Subject: Re: enviroment variable set
Message-Id: <slrnb0814c.aid.mgjv@martien.heliotrope.home>
On Fri, 20 Dec 2002 21:06:48 -0600,
Abernathey Family <family2@aracnet.com> wrote:
> Tad McClellan wrote:
>>
>> Abernathey Family <family2@aracnet.com> wrote:
>> > Anno Siegel wrote something moderately useful:
>> >> According to James Hou <happier_tj@hotmail.com>:
>> >> > > happier wrote:
>> >> > > > I need to run my perl program in cron job and before running it must
>> >> > > > set some enviroment variable,so I write a shell script as following
>>
>> >> > So I have to set the
>> >> > variables in a shell script, and then from that shell script call the
>> >>
>> >> The "shell script" might as well be another Perl script, for that matter.
>>
>> > You cannot do it
>> > with a Perl script.
>>
>> Yes you can:
>>
>> $ENV{PERL5LIB} = '/some/path';
>> system 'prog_that_uses_modules_not_in_standard_place';
> --snip--
> No you can't. Specifically the LD_LIBRARY_PATH path variable in Linux,
> which you need to set if you trying to get executables, i.e.
> wonderful-C-junk, from someplace else.
And why would the environment variable LD_LIBRARY_PATH not be inherited
by the program executed with system(), if it was set in the calling Perl
program?
$ENV{LD_LIBRARY_PATH} = "/path/to/some/libs";
system("some_prog_that_needs_LD_LIBRARY_PATH");
There is nothing to say that that program can't be another Perl program.
Martien
--
|
Martien Verbruggen | You can't have everything, where would you
| put it?
|
------------------------------
Date: Fri, 20 Dec 2002 22:57:25 -0600
From: "William Alexander Segraves" <wsegrave@mindspring.com>
Subject: Re: Getting perl to work on XP.
Message-Id: <au0sg3$m$1@slb9.atl.mindspring.net>
"stew dean" <stewart@webslave.dircon.co.uk> wrote in message
news:2b68957a.0212200513.309bf8ae@posting.google.com...
<snip>
> I'm getting really hacked off with this but it's got to be done. What
> do I tweak to get this to work?
WADR, the first thing you need to tweak is your attitude. You'll learn a lot
faster if you do your own research, attempting to solve your own problems,
rather than expecting others to come up with instant wisdom for *you*.
That said (written), with good intentions for a positive effect, I'd
recommend you download and install IndigoPerl, available free from
www.indigostar.com. On installation, you'll have Perl and Apache working on
your XP system. No troubles --it's pre-configured.
Happy Holidays!
Bill Segraves
------------------------------
Date: Sat, 21 Dec 2002 03:05:04 GMT
From: "bashbrothers" <bashbrothers@cox.net>
Subject: Re: incorporating off-site content
Message-Id: <ATQM9.63926$Y86.10777@news2.central.cox.net>
To put the original portion of an email or Usenet response before the quoted
part, as opposed to the more logical sequence of quoted portion first with
original following. This term is generally used pejoratively with the
implication that the offending person is a newbie, a Microsoft addict
(Microsoft mail tools produce a similar format by default), or a
garden-variety idiot.
I think one or more of these applies to me, lol, thanks for your help and
sorry to offend.
------------------------------
Date: Sat, 21 Dec 2002 17:27:16 +1100
From: "Tintin" <me@privacy.net>
Subject: Re: incorporating off-site content
Message-Id: <au11k6$3emme$1@ID-172104.news.dfncis.de>
"bashbrothers" <bashbrothers@cox.net> wrote in message
news:ATQM9.63926$Y86.10777@news2.central.cox.net...
> To put the original portion of an email or Usenet response before the
quoted
> part, as opposed to the more logical sequence of quoted portion first with
> original following. This term is generally used pejoratively with the
> implication that the offending person is a newbie, a Microsoft addict
> (Microsoft mail tools produce a similar format by default), or a
> garden-variety idiot.
>
> I think one or more of these applies to me, lol, thanks for your help and
> sorry to offend.
The next thing you need to work on is quoting in context.
------------------------------
Date: Fri, 20 Dec 2002 23:12:55 -0800
From: Alex <usenet_poster_a@tranzoa.com>
Subject: Re: Mail::POP3Client vs. Sockets networking ?
Message-Id: <eJCdnThcmetmiZmjXTWcpg@giganews.com>
doofus wrote:
> Tassilo v. Parseval wrote:
>
>
>>Have you tried Net::POP3 to see whether it gives any significant
>>different in performance?
>
>
> Yeah, I tried it too. It didn't seem to make much difference, but then
> again, I wasn't doing split second timing.
>
> Thanks for the reply.
>
>
>
Turn on debugging printouts and watch the interchange. Might just be a
slow server. :) (I use Mail::Pop3Client a lot. Speed's fine. Servers can
be *really* slow.)
Alex
------------------------------
Date: 20 Dec 2002 16:04:26 -0800
From: graham@purplemtn.com (Graham Knight)
Subject: OCR Module?
Message-Id: <20b950bc.0212201604.7c9726b@posting.google.com>
Would anyone happen to know of an perl OCR module that will accept
.jpg or .gif images and spit out some text? I've been looking for one
for a while now without much luck.
Any pointers will be much appreciated.
Graham
------------------------------
Date: Sat, 21 Dec 2002 00:49:41 GMT
From: "gibbering poster" <noone@nowhere.com>
Subject: Performance for my roguelike
Message-Id: <FUOM9.1125$Ex.80808041@newssvr21.news.prodigy.com>
Hi guys... I would post this in RGRD, but those folks dont know much about perl...
Basically, I'm working on a roguelike game in perl!! Call me crazy, but I'm giving
it a shot. Origally, My map object had a 2d array of scalars which simply
represented the character to draw for a given tile.
The function to init the grid was something like:
for $x (0 .. $MAX_X) {
for $y (0 .. $MAX_Y) {
$grid[$x][$y] = ' '; # Init to walls
}
}
And to print it:
for $x (0 .. $MAX_X) {
for $y (0 .. $MAX_Y) {
print "$grid[$x][$y]";
}
print "\n";
}
Cheesy, yet simple to start.... Using Term::Readkey, and calls to screen clearing
(cls, clear), I was able to get Very fast seamless screen refreshes... but...
Once I got my dungeon generation algorithm the way I wanted it, I realized that
the end node of my grid array could no longer be a scalar... It would need to keep
track of players, monsters, traps, and items that might reside on a given tile.
So, I created a Tile Object, and filled the grid array with Tiles...
In the Tile Object, I have a method something like:
sub get_tile_character {
my $this = shift;
return $this->{'display_character'};
}
Since I've done that, My screen refreshes are about 10X slower.. still very fast,
but slow enough that it looks annoying...
I was wondering if any of the folks in this group would have any suggestions on
how I can speed this up... Some ideas I've had yet not implemented...
1) Keep a local cache of the grid as a property of the main map object... This
would have end nodes as scalar characters like the old version, and would be
completely reloaded each time the character moved.
2) Same as #1, but only update the parts that have changed
3) Instead of printing 1 character at a time, buffer the whole line into a string
of characters, and print that all at one time per line
4) Same as #3, but put all the lines together into 1 string with newlines, and
print that...
Thanks in advance for any advice you might have...
------------------------------
Date: Sat, 21 Dec 2002 02:01:29 GMT
From: Uri Guttman <uri@stemsystems.com>
Subject: Re: Performance for my roguelike
Message-Id: <x7smwsgmfb.fsf@mail.sysarch.com>
>>>>> "gp" == gibbering poster <noone@nowhere.com> writes:
gp> for $x (0 .. $MAX_X) {
gp> for $y (0 .. $MAX_Y) {
gp> $grid[$x][$y] = ' '; # Init to walls
gp> }
gp> }
this should be faster:
for $x (0 .. $MAX_X) {
$grid[$x] = [ (' ') x $MAX_Y ] ;
}
gp> And to print it:
gp> for $x (0 .. $MAX_X) {
gp> for $y (0 .. $MAX_Y) {
gp> print "$grid[$x][$y]";
the quotes there are not needed and slow it down.
gp> In the Tile Object, I have a method something like:
gp> sub get_tile_character {
gp> my $this = shift;
gp> return $this->{'display_character'};
gp> }
calling a method for each grid chat is going to be slow.
gp> Since I've done that, My screen refreshes are about 10X
gp> slower.. still very fast, but slow enough that it looks
gp> annoying...
gp> 1) Keep a local cache of the grid as a property of the main map
gp> object... This would have end nodes as scalar characters like the
gp> old version, and would be completely reloaded each time the
gp> character moved.
gp> 2) Same as #1, but only update the parts that have changed
gp> 3) Instead of printing 1 character at a time, buffer the whole
gp> line into a string of characters, and print that all at one time
gp> per line
calling print less often is always a speedup. in fact, a common
technique i use is to build up string using .= and then print them.
gp> 4) Same as #3, but put all the lines together into 1 string with
gp> newlines, and print that...
which is what i just suggested.
but your cache idea isn't clear. here are some thoughts. in each map
entry have a hash with the char print AND the tile object. then you
don't need a method call to get the tile once it is set. you still need
to call the tile object to see if it has changed or whatever.
also you can use a single long string for the whole map and use lvalue
substr to access it. then you just need for each tile to have its substr
index (precomputed from its coordinated) and it can update the map
string directly.
also have you benchmarked it to find out if the display is the slow
part? just calling all the tile objects to update them will be
slow. there may be better architectures to generate the tile chars
without having an object per tile in the map. maybe have only those
tiles with something in them have objects and then you can scan those,
create a new map string and print that.
the string part should be fairly fast if you cut down on the print
calls. but cutting down on the object calls will probably make it much
faster.
uri
--
Uri Guttman ------ uri@stemsystems.com -------- http://www.stemsystems.com
----- Stem and Perl Development, Systems Architecture, Design and Coding ----
Search or Offer Perl Jobs ---------------------------- http://jobs.perl.org
------------------------------
Date: Sat, 21 Dec 2002 00:18:31 -0500
From: "J.B. Moreno" <planb@newsreaders.com>
Subject: Re: php and perl
Message-Id: <211220020018318323%planb@newsreaders.com>
In article <201220022305395391%planb@newsreaders.com>,
J.B. Moreno <planb@newsreaders.com> wrote:
> I help maintain a website that has a dynamic header that is created
> using ssi (server side includes), which is basically just a call to a
> perl script.
>
> I'm thinking about switching over to php, but would like to do so
> slowly -- so until I'm ready to use just php, I'd like to have some way
> of calling a perl cgi script and including it's output.
>
> I'm a php newbie, so any hints will be greatly appreciated.
OK, I kept digging at it i the meantime and came across "passthru",
which with a bit more digging seems to do what I want (the script
needed some variables passed in which I did via putenv).
Now, what I have so far is:
putenv("QUERY_STRING=section=header&pagetitle=Downloads");
passthru('../ssi/testssi.cgi');
Which seems to do just what I want, except for one slight detail...
The "testssi.cig" requires another file and it seems to stop dead
afterwords.
(I'm crossposting this to clpm, because I'm not sure whether it's a
php, perl or unix problem, hopefully someone will have an answer or at
least a hint...).
--
J.B. Moreno
------------------------------
Date: Sat, 21 Dec 2002 00:31:59 GMT
From: "Tom Hoffmann" <trh411@earthlink.net>
Subject: Regex [1-9] vs \d
Message-Id: <3EOM9.3198$_V5.289851@newsread2.prod.itd.earthlink.net>
I want to edit an input item for 1-9999.
why does this work:
if ($data !~ /[1-9]\d{0,3}/) {
...
while this one doesn't:
if ($data !~ /[1-9][1-9{0,3}]/) {
...
the second conditional does not recognize numbers in the range 1-9 as
valid. All other numbers successfully pass edit. Am I missing something
obvious here?
------------------------------
Date: Sat, 21 Dec 2002 00:46:47 GMT
From: "John W. Krahn" <krahnj@acm.org>
Subject: Re: Regex [1-9] vs \d
Message-Id: <3E03B9A8.1C9EB6C7@acm.org>
Tom Hoffmann wrote:
>
> I want to edit an input item for 1-9999.
>
> why does this work:
> if ($data !~ /[1-9]\d{0,3}/) {
> ...
>
> while this one doesn't:
> if ($data !~ /[1-9][1-9{0,3}]/) {
> ...
>
> the second conditional does not recognize numbers in the range 1-9 as
> valid. All other numbers successfully pass edit. Am I missing something
> obvious here?
You have to put the range outside the character class:
if ($data !~ /[1-9][1-9]{0,3}/) {
Or just:
if ($data !~ /[1-9]{1,4}/) {
John
--
use Perl;
program
fulfillment
------------------------------
Date: Sat, 21 Dec 2002 01:30:28 GMT
From: "Tom Hoffmann" <trh411@earthlink.net>
Subject: Re: Regex [1-9] vs \d
Message-Id: <UuPM9.3366$n97.321652@newsread1.prod.itd.earthlink.net>
On Sat, 21 Dec 2002 00:46:47 +0000, John W. Krahn wrote:
> Tom Hoffmann wrote:
>>
>> I want to edit an input item for 1-9999.
>>
>> why does this work:
>> if ($data !~ /[1-9]\d{0,3}/) {
>> ...
>>
>> while this one doesn't:
>> if ($data !~ /[1-9][1-9{0,3}]/) {
>> ...
>>
>> the second conditional does not recognize numbers in the range 1-9 as
>> valid. All other numbers successfully pass edit. Am I missing
>> something obvious here?
>
> You have to put the range outside the character class:
>
> if ($data !~ /[1-9][1-9]{0,3}/) {
>
> Or just:
>
> if ($data !~ /[1-9]{1,4}/) {
Thanks, John ... I was missing something obvious.
------------------------------
Date: Sat, 21 Dec 2002 06:39:54 GMT
From: dblood <dblood@2c-b.net>
Subject: REgex quesion [^-]
Message-Id: <_0UM9.56148$Ik.1731782@typhoon.sonic.net>
How can I match a string that does not have a
'-' before it?
$string ="-foobarblahblahblahfoobarfoofoo";
I would like to be able to match foobar only if it does
not have a '-' before it. I've tried
([^-]foobar) and ([^\-]foobar) and ([^\055]foobar).
Can some tell me what I am doing wrong?
Thanks
------------------------------
Date: Sat, 21 Dec 2002 07:39:20 GMT
From: tiltonj@erols.com (Jay Tilton)
Subject: Re: REgex quesion [^-]
Message-Id: <3e0413d5.37702961@news.erols.com>
dblood <dblood@2c-b.net> wrote:
: $string ="-foobarblahblahblahfoobarfoofoo";
:
: I would like to be able to match foobar only if it does
: not have a '-' before it.
So you do not want to match the first "foobar" because it is preceded
by "-", but you do want to match the second, yes?
: I've tried
: ([^-]foobar) and ([^\-]foobar) and ([^\055]foobar).
:
: Can some tell me what I am doing wrong?
Not unless you can explain what that regex is doing that is not
acceptable.
H>cat foo.pl
#!perl -l
$_ = "-foobarblahblahblahfoobarfoofoo";
print /([^-]foobar)/ ? "matched '$1' at $-[1]" : "did not match";
H>perl foo.pl
matched 'hfoobar' at 18
I guess that leading 'h' is undesired. Change the regex so
the [^-] is not part of the capture.
/[^-](foobar)/
------------------------------
Date: 21 Dec 2002 07:52:10 GMT
From: roberson@ibd.nrc-cnrc.gc.ca (Walter Roberson)
Subject: Re: REgex quesion [^-]
Message-Id: <au16ja$1kj$1@canopus.cc.umanitoba.ca>
In article <3e0413d5.37702961@news.erols.com>,
Jay Tilton <tiltonj@erols.com> wrote:
|dblood <dblood@2c-b.net> wrote:
|: $string ="-foobarblahblahblahfoobarfoofoo";
|: I would like to be able to match foobar only if it does
|: not have a '-' before it.
|I guess that leading 'h' is undesired. Change the regex so
|the [^-] is not part of the capture.
| /[^-](foobar)/
However, that won't match a string that begins with foobar.
See the perlre man page description of (?!pattern)
(which essentially says you cannot do it in any simple way.)
Note: I believe I saw someone write in this group that as of
perl 5.8, there is a new r.e. construct that *does* allow it to be
done cleanly.
--
"There are three kinds of lies: lies, damn lies, and statistics."
-- not Twain, perhaps Disraeli, first quoted by Leonard Courtney
------------------------------
Date: Sat, 21 Dec 2002 08:00:15 GMT
From: "John W. Krahn" <krahnj@acm.org>
Subject: Re: REgex quesion [^-]
Message-Id: <3E041F3F.DF4CD427@acm.org>
dblood wrote:
>
> How can I match a string that does not have a
> '-' before it?
>
> $string ="-foobarblahblahblahfoobarfoofoo";
>
> I would like to be able to match foobar only if it does
> not have a '-' before it. I've tried
> ([^-]foobar) and ([^\-]foobar) and ([^\055]foobar).
>
> Can some tell me what I am doing wrong?
((?<!-)foobar)
John
--
use Perl;
program
fulfillment
------------------------------
Date: Fri, 20 Dec 2002 20:03:52 -0500
From: Andrzej Jan Taramina <andrzej@chaeron.spamicide.com>
Subject: Shroud+ Perl source code obfuscator...
Message-Id: <5bf70vocovphvdku7f3614nmcsrgbodsoi@4ax.com>
I extended Robert Jones' Perl Obfuscator, Shroud into what I am
calling Shroud+. I needed it to protect some rather extensive scripts
I have developed for Inventory and Image Gallery management on client
web sites.
It seems to work just fine with my source code (and with mod_perl2),
so I thought I would let folks know about it here, in case they find
it useful.
New stuff includes:
- Specification of input/output directories
- Writing of status info to STDOUT
- Replacement of internal subroutine names (those beginning with an
underscore "_" character).
- Optionally replace public subroutine names if the input is a perl
Module (.pm file) AND if you specify that an externalmap should be
created.
- For scripts (not .pm modules ) it will optionally take an
externalmap file and use this to rename subroutine calls to be
consistent with the Perl Module that was used to create the
externalmap file.
- Replacement of 'use constants' definitions with capitalized
shrouded identifiers
- Replace object-oriented attributes that take the form
'$self->{ "_attr" } = "something";' and that are found inside a
constructor (sub new).
- removal of tabs and condensing of multiple spaces
- removal of newlines
- POD updated to reflect the above and more bugs/features/caveats
noted.
It's posted on http://www.chaeron.com
And no, I won't support it....it's provided on an as is basis only.
....Andrzej
NOTE: Remove Spamicide(tm) before replying!!!
------------------------------
Date: Sat, 21 Dec 2002 02:03:52 GMT
From: Uri Guttman <uri@stemsystems.com>
Subject: Re: Shroud+ Perl source code obfuscator...
Message-Id: <x7of7ggmbb.fsf@mail.sysarch.com>
comp.lang.perl is not a valid group, no matter what your server may
say. it was killed many years ago.
and obscured perl code can always be broken. there have been many
threads on this here, including one jerk who claimed his was unbreakable
and it was broken in 20 minutes use a deparse module.
don't waste your or anyone else's time with this. use a proper license
to manage your software. plenty of successful businesses do
it. obsfucated code doesn't do anything useful.
uri
--
Uri Guttman ------ uri@stemsystems.com -------- http://www.stemsystems.com
----- Stem and Perl Development, Systems Architecture, Design and Coding ----
Search or Offer Perl Jobs ---------------------------- http://jobs.perl.org
------------------------------
Date: Fri, 20 Dec 2002 21:34:35 -0600
From: tadmc@augustmail.com (Tad McClellan)
Subject: Re: Shroud+ Perl source code obfuscator...
Message-Id: <slrnb07oab.1n9.tadmc@magna.augustmail.com>
[ comp.lang.perl is a non-existant newsgroup. It was rmgroup'd years ago.
Crossposting to it makes your articles score very low...
]
Andrzej Jan Taramina <andrzej@chaeron.spamicide.com> wrote:
> I extended Robert Jones' Perl Obfuscator, Shroud into what I am
> calling Shroud+. I needed it to protect some rather extensive scripts
Protect them from what, exactly?
Unauthorized modification?
Stealing of algorithm(s)?
Something else?
--
Tad McClellan SGML consulting
tadmc@augustmail.com Perl programming
Fort Worth, Texas
------------------------------
Date: Sat, 21 Dec 2002 00:53:07 -0500
From: Andrzej Jan Taramina <andrzej@chaeron.spamicide.com>
Subject: Re: Shroud+ Perl source code obfuscator...
Message-Id: <o5080vk56dbmpd8ne13kscsoqi44r52108@4ax.com>
On Fri, 20 Dec 2002 21:34:35 -0600, tadmc@augustmail.com (Tad
McClellan) wrote:
> Protect them from what, exactly?
Stealing of the code....though that is possible with obfuscated code,
it is rather inconvenient. Once I have recouped a reasonable return
on my investment of effort and time, then I will consider releasing my
proprietary code as open source. Maybe.
Some code I release as open source, other code pays my mortgage. My
decision as to which is which. This corresponds to my definition of
"freedom". Something that many zealots do not understand.
The ranting that I have heard about this is amusing to say the least.
Specially since the Shroud+ code has been released as open source.
....Andrzej
NOTE: Remove Spamicide(tm) before replying!!!
------------------------------
Date: Sat, 21 Dec 2002 06:07:46 GMT
From: Uri Guttman <uri@stemsystems.com>
Subject: Re: Shroud+ Perl source code obfuscator...
Message-Id: <x77ke3hpla.fsf@mail.sysarch.com>
>>>>> "AJT" == Andrzej Jan Taramina <andrzej@chaeron.spamicide.com> writes:
AJT> On Fri, 20 Dec 2002 21:34:35 -0600, tadmc@augustmail.com (Tad
AJT> McClellan) wrote:
>> Protect them from what, exactly?
AJT> Stealing of the code....though that is possible with obfuscated code,
AJT> it is rather inconvenient. Once I have recouped a reasonable return
AJT> on my investment of effort and time, then I will consider releasing my
AJT> proprietary code as open source. Maybe.
there is actually very little theft of commercial open source code. most
stolen stuff is warez of redmondware by kiddies and booleggers. most
companies who buy code want support and pay for the proper
licenses. your worry is wasting your energy and work on it. anyone who
really wants to steal it will and you won't be able to stop them.
AJT> Some code I release as open source, other code pays my mortgage. My
AJT> decision as to which is which. This corresponds to my definition of
AJT> "freedom". Something that many zealots do not understand.
it has nothing to do with open source but licensing. you obviously don't
understand the difference. thieves don't care about either and you
should ignore them. if your program is so good that it makes a nice
income then it will be well known. anyone who uses unlicensec copies
will be total thieves and you can prosecute on that basis. any legit
users will buy licenses.
AJT> The ranting that I have heard about this is amusing to say the least.
and your head in the ground attitude is foolish.
AJT> Specially since the Shroud+ code has been released as open source.
so what? that has nothing to do with your program
uri
--
Uri Guttman ------ uri@stemsystems.com -------- http://www.stemsystems.com
----- Stem and Perl Development, Systems Architecture, Design and Coding ----
Search or Offer Perl Jobs ---------------------------- http://jobs.perl.org
------------------------------
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 4299
***************************************