Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Re^3: I want you to convince me to learn Perl

by Marshall (Abbot)
on Sep 25, 2013 at 14:19 UTC ( #1055693=note: print w/replies, xml ) Need Help??

in reply to Re^2: I want you to convince me to learn Perl
in thread I want you to convince me to learn Perl

I find myself write less and less C as I can do almost anything in perl, and write it over ten times as fast in code that is easier to maintain. Some projects however still need perl: the code cannot be shared by law and perl has no good code-hiding feature.
I think that we are on the same page here.
I am not so sure about the lack of a "code-hiding" feature.

I use the Active-State Compiler and this thing is pretty hard to "decode". Many years ago, a massive power failure took out my Power Supply and 3 HD's. That trashed my Perl source code for one project, but not my .exe. The .exe code still runs over 5 years with no reported defects - so I am happy about that! If somebody can help me recover the source code, I would appreciate it. But I am skeptical. It is not as easy as one might think.

I love Perl. A wonderful language.

A new school quarter started Monday and I'm going to be working with an assembly class. I like it. Perl can kick butt vs this stuff except in very high performance situations.

  • Comment on Re^3: I want you to convince me to learn Perl

Replies are listed 'Best First'.
Re^4: I want you to convince me to learn Perl
by bulk88 (Priest) on Sep 26, 2013 at 04:39 UTC
    I assume you are referring to PerlApp by AS. Use a C debugger, set a breakpoint in eval_pv() or something similar (I dont remember anymore) (finding eval_pv in the process will be the painful part), once the AS decompresser/obfuscator decrypts it into memory, it will be passed as 1 big string to the perl5**.dll which will be in a temp dir somewhere on disk.

    The other choice is to RE the PerlApp obfuscator algorithm Re: Security, is it to much to ask?. Its been published a couple times in history, for example A real challenge and Decompile PerlApp but AS changes it constantly for obvious reasons.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1055693]
[Corion]: In fact, the whole thing is just four simple programs, one App::scrape, another being DBIx::RunSQL, and one some glue to convert a JSON object into an SQL INSERT statement (+DBI connect/execute), so it would be an incredibly simple solution...
[Corion]: ... but that simplicity falls down due to SQLite letting me down and me being too lazy to move to a real DB. Maybe DBD::CSV can handle window functions...
[hippo]: Pg has the "trust" mechanism if you don't fancy using credentials for a trivial db.
[Corion]: hippo: Oooh, that sounds quite nice - let me read the documentation on that :)
[hippo]: https://www. docs/current/ static/auth- methods.html#AUTH- TRUST
[erix]: or compile & run an instance as yourself (not user 'postgres')
[erix]: easiest setup is to run with PG* env variables set, and a custom .pgpass files (can be a $PGPASSFILE)
[Corion]: Hmm - "trust" sounds interesting, but I have still to find whether I can restrict that on a per-DB level ;)
[Corion]: erix: Sure, but SQLite doesn't even need that :)
[hippo]: Corion: Yes, you can. It's all in the pg_hba.conf

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (10)
As of 2018-02-23 15:10 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (302 votes). Check out past polls.