Hi All
Following a talk at last year's London Perl Workshop, I have been
looking at providing a mechanism similar to that available to jar
mechanism for Java.
The issue I am trying to address is the difficulty for Perl newbies to
be able to do something with a root installed perl to which they don't
have access, using CPAN modules which they don't know how to install
without access to a c compiler or learning how to use CPAN, CPANPLUS or
cpanm or equivalent.
The idea is to be able to set up a repository of PAR archives on the
internet so that perl beginners can simply download par files of their
choice and then
be able to use them with whatever perl is available to them without
needing to install anything.
For this to work, I need to be able to create a native perl module
(without dependency on any os specific modules or shared libraries)
which is able to use these par files.
Unfortunately, the PAR module relies on Archive::Zip which in turn needs
the Compress::Raw::Zlib module which are OS specific needing a compiler.
I would like to create a PAR::Lite module which performs a subset of the
PAR functionality using something like Compress::Zlib::Perl to just
handle using PAR files as an additional resource of CPAN modules.
In this way, users would only need to download and extract PAR::Lite and
dependencies somewhere and any PAR files they want - modify PERL5LIB to
be able to find PAR::Lite e.t.c and PERL5OPT to locate the parfiles
needed (or add 'use PAR::Lite ....' to their scripts') and it they can
use the modules provided by the PAR files.
I have already been working on a new PAR builder which uses a simple
config file to describe what is wanted in a PAR file and includes the
ability to optionally 'autouse' modules when the PAR file is used and
optionally obfuscate and bleach modules included in the PAR.
This could persuade Third Party companies to provide perl api's to
commercial products via obfuscated and bleached (and possibly encrypted)
PAR files
Does anyone have any major objection to me using the PAR namespace in
this way and anyone want to help in task ?
I think that, it I get this working reliably, it could result a new
popularity for perl if newbies can start doing modern sexy things
without the current steep learning curve.
Thoughts anyone ?
Cheers
Tony
Miltonkeynes PM