staticperl es un programa muy especial.
Permite crear intérpretes de Perl en un solo fichero, o incrustar un intérprete de Perl en otras aplicaciones. Un solo fichero significa que todo está auto contenido: no hay objetos compartidos por separado, sin auto cargas fragmentadas, si dependencias de .pm o .pl. Y con una compilación estática, puedes crear (o incrustar) un único fichero que contenga el intérprete perl, la biblioteca libc, todos los módulos y bibliotecas que necesites.
Con uClibc y upx sobre x86, puedes crear un único binario de 500Kb que contenga perl y 100 módulos, como POSIX, AnyEvent, EV, IO::AIO, Coro y así. O cualquier otra selección de módulos.
Los ficheros creados no necesitan tener acceso de escritura al sistema de ficheros (como lo hace PAR). De hecho, como este programa es, de varias formas, similar a PAR::Packer, aquí están las diferencias:
* Los ejecutables generados son mucho más pequeños que los creados por PAR
* Los ejecutables generados arrancan mucho más rápido
* Los ejecutables generados no necesitan un sistema de ficheros con permiso de escritura. staticperl carga todos los ficheros requeridos directamente en memoria.
* Más control sobre los ficheros incluidos
* PAR es más fácil de usar que staticperl