ActivePerl es una distribución de Perl de ActiveState (anteriormente parte de Sophos ) para Windows , macOS , Linux , Solaris , AIX y HP-UX .
Hay disponibles algunas ediciones principales, entre ellas: Community (gratuita, solo para uso de desarrollo) y varios niveles pagos hasta Enterprise, que incluye compatibilidad con licencias OEM. Incluye una versión del administrador de paquetes Perl (PPM) para instalar paquetes desde CPAN , etc.
La versión de Windows incluye un componente Active Scripting para Windows Script Host (WSH) llamado PerlScript y un módulo ISAPI para integrar en Internet Information Services (IIS).
En un principio, PerlScript era únicamente un motor de scripts ActiveX producido por la empresa ActiveState para su uso con Internet Information Services (IIS) de Microsoft , que permite a los programadores utilizar código basado en Perl además de, o en lugar de, VBScript o JScript en el contexto de servidores web que ejecutan el protocolo ASP . Posteriormente, se creó Apache::ASP para el servidor web Apache , que permite codificar únicamente con Perl, pero no con VBScript ni JScript. PerlScript también se puede utilizar para escribir programas basados en Windows Script Host, de forma similar a VBScript.
Los PerlScripts independientes se pueden ejecutar si se crean con la extensión de archivo .pls, en cuyo caso no requieren incluir XML , por ejemplo
use strict ; nuestro $WScript ; $WScript -> Echo ( "¡Hola, mundo!" );
Los archivos .pls no tienen acceso a la funcionalidad de arrastrar y soltar WSH.
Los PerlScripts que tienen la extensión wsf requieren etiquetas XML que especifiquen el identificador del trabajo y el lenguaje del script, por ejemplo
< Job ID = "DropFiles" > < script language = "PerlScript" > use strict ; our $WScript ; $WScript -> Echo ( "Mostrando los nombres de los archivos soltados" ); my $arg = $WScript -> { Argumentos }; my $countArgs = $arg -> { Conteo }; for ( my $i = 0 ; $i < $countArgs ; $i ++ ) { $WScript -> Echo ( $arg -> Item ( $i )); } </script> </Job>
Los PerlScripts de wsf obtienen acceso a la funcionalidad de arrastrar y soltar de WSH, de forma similar a los Perl Droplets en el ahora obsoleto MacPerl.
La mayoría de los objetos WSH están disponibles a través del $WScript
objeto creado implícitamente.