in reply to Perl Scripts on systems without perl environments.

Define "self-contained item". You mean, a single binary? A single package? A directory tree?

Software packages to be self-contained, including vehicles to run their language are rather common. Over the decades, I've installed packages that carry their own Java, Python, whatever environment, and I've delivered software that included a complete Perl environment as well. Delivering Perl with your product solves so many problems - no mysterious problems you can't replicate in the office because your customer uses the version of Perl you support, but he got the CDs of his vendor in week X, and that's when build ZZZZ was on the CD and that version happens to contain a bug - one not present inbuild ZZZZ-1 and fixed in build ZZZZ+1.

I prefer software packages to be self-sufficient as much as possible. I don't want to have to upgrade my javascript environment when I upgrade my browser (with the effect my other browser no longer works) - no, when I upgrade my browser, I expect it to come with javascript. And ideally, with Perl and Java and Rexx and Python, and whatever else it needs. I don't mind the discspace. 400 Gb drives are common, a few extra Perl installations on a box isn't going to hurt.

Perl --((8:>*
  • Comment on Re: Perl Scripts on systems without perl environments.

Replies are listed 'Best First'.
Re^2: Perl Scripts on systems without perl environments.
by SkipHuffman (Monk) on Nov 07, 2005 at 17:00 UTC

    The customer would not accept that. Far too large. I have a reletively simple script, ~150 lines. that they need to run regularly. If I could install that (or a compiled version) and maybe a library or five, I should be OK. More than that and they will not be happy.

    Skip
      Why is installing five libraries ok, but a custom installation of Perl isn't? Perl is nothing more than a binary, and a bunch of libraries - most of them you won't need. In fact, you could create a Perl that statically links in every extension it needs (and don't compile what you don't need). And if you really must, you can get away with delivering just that binary - any (Perl) library code, you just copy-and-paste in your script. Or rather, use a makefile to spit out a single Perl script. Then you need just two files.

      OTOH, if all you have is a relative simple script, you could have written it in C in less time than it took for the participants of this thread to write their replies.

      Perl --((8:>*

        Size and support software. Perl requires EMX. EMX requires some other stuff. Installation nightmare.

        I don't speak c. I am a generalist not a programmer. Scripting I know.

        Skip
Re^2: Perl Scripts on systems without perl environments.
by SkipHuffman (Monk) on Nov 07, 2005 at 17:05 UTC

    400GB drives may be common, by try getting a bank to install one on a seven year old system.

    Skip
      That's not your problem is it? All you say is "this package needs X Mb of installation space".
      Perl --((8:>*

        Yeah, it is my problem. I have been assigned to solve it within the parameters assigned by the customer.

        Skip