Bob said:
Re: John Bokma
...what would be the difference between "perl" and "Perl"?
That's a Frequently Asked Question - have a look at "perldoc -q difference".
If you package up a Windows build of perl (the interpreter) along with some
portable Perl code to make an .exe, you can't expect the result to run on
Solaris simply because the un-packaged Perl source code was portable. That
kind of portability goes out the window as soon as you produce a platform-
specific binary.
I spent ten years to design an algorithm that I would rather not get
stolen
in ten minutes by reading the .exe. I appreciate your humor
John's not joking. Well, he might be, but if so the joke is funny because
it's true.
A PAR or perl2exe package will not protect your code from reverse engineering.
But then, neither will using a C, C++, Java, or any other compiler. If it's
available to the public, it can (and undoubtedly will) be hacked.
Most retailers take a certain percentage of theft as a given - they even have
a term for it: "shrinkage". They learned long ago that the effort needed to
eliminating those last few points would actually cost them more than the lost
merchandise itself costs.
There's a lesson there for software publishers. Piracy *will* happen. By all
means take reasonable precautions, but don't lose sleep over the fact that a
handful of skilled "crackers" will be able to see your code.
The few "pirates" I've known personally were just collectors anyway, who
amassed thousands of disks worth of software they never used. They wouldn't
have bought the software anyway - it would have cost them $millions - so I
don't think that sort of thing has much effect on the bottom line.
I think what John's saying is, blame the programmer, not the language. Java
can be used by a good programmer to write tight, efficient code.
Bad Java programmers tend to believe that they can feed their compiler a
mess of fat, bloated code and it will magically be able to produce a slim,
efficient executable out of it. And when it fails to do so, they'll blame
the language, the runtime, the libraries, the phase of the moon, solar
flares - anything that doesn't require them to admit their own mistakes.
Come to think of it, that's bad programmers in general. Nothing Java-specific
about it.
sherm--