Las páginas web se escriben en diferentes lenguajes. Hay un número interesante de tecnologías y dependiendo del tipo de página que se desea hacer, se utiliza una herramienta de programación diferente. Por ejemplo, muchas páginas sencillas usan HTML pero si hay que hacer animaciones, entonces hay que buscar opciones como HTML5, OpenGL o bien incluso Flash (aunque muchos lo den por muerto).
Así, Perl se ha usado por muchos años en la web a través de lo que se llama CGI (Common Gateway Interface -Interfaz de entrada común), una tecnología que se usa en los servidores web, pero con Dancer, Catalyst y ahora Mojolicious, se puede usar Perl de la manera moderna. De hecho, con la versión 8.0 de Mojo, llamada “Supervillain” (súper-villano), que acaba de liberarse, es una opción por demás atractiva.
Perl 101: foreach loops https://t.co/fi96AAUM6J by @briandfoy_perl #perl
— The Perl Foundation (@perlfoundation) September 23, 2018
Es claro que cada entorno tiene sus propias ventajas y desventajas, en donde por ejemplo, puede ser un ambiente muy ligero, como en el caso de Dancer, mientras que Catalyst se considera el más pesado con una curva pronunciada de aprendizaje. Mojo, en cambio, está en un lugar intermedio entre ambos entornos, en donde su punto fuerte es que es un “entorno en tiempo real para la web” (con Perl), debido al uso de websockets y sus capacidades de no-bloqueo y async.
Probablemente la característica más interesante de Mojo es que está basado en el paradigma de eventos á la Node.js, lo que permite y mejora las operaciones asíncronas. Hay también cambios en el modelo de procesos en el núcleo, en el que un objeto (trabajador), es capaz ahora de hospedar cualquier número de subprocesos para acelerar la ejecución de operaciones lentas prolongadas. Mojo tiene además un módulo que facilita las peticiones a bases de datos compactas de Postgres.
Writing new code in Perl every day. Web applications, scheduled jobs, API integrations, you name it. Still waiting for another language to be capable of something Perl isn't.
— Marcus Del Greco (@marcusdelgreco) September 28, 2018
Así entonces, este entorno permite sacar muchas ventajas del lenguaje Perl, que lleva ya muchos años entre nosotros, pero desde luego, ya en entornos modernos como la web. Y es que el mundo del cómputo está lleno de la premisa: “actualizarse o morir” y es evidente que Perl tiene mucho que dar y los programadores lo saben, por lo cual Mojo es una opción muy interesante.