- El origen del declive de Perl fue una cultura de desarrollo conservadora y cerrada, no en limitaciones técnicas
- La actitud excluyente y el orgullo de “expertos” provenientes de la cultura inicial de administradores de sistemas UNIX obstaculizó el desarrollo del lenguaje
- La fragmentación de Perl 6 se evalúa como un evento que mostró más los conflictos internos y el conservadurismo comunitario que un fracaso técnico
- En el mismo período, Ruby on Rails, PHP y Python crecieron con culturas abiertas y accesibles, sustituyendo el lugar de Perl
- Perl sigue siendo un lenguaje de scripting clave del entorno POSIX, aunque su influencia como lenguaje principal de desarrollo ha disminuido
Orígenes y límites culturales de Perl
- Perl nació en la cultura de administradores de sistemas UNIX, dominada por chistes internos y normas cerradas como “RTFM” y “luser”
- Esa cultura tomó como virtud la monopolización del conocimiento y el mantenimiento de barreras de entrada, y veía la dificultad misma como símbolo de habilidad
- Como resultado, se formó una estructura colectivista con fuerte resistencia a usuarios nuevos o cambios
- Esta actitud se compara con una “cultura de fortaleza sitiada”
- Los miembros internos convertían su dificultad técnica en motivo de orgullo y desdeñaban los intentos externos de simplificación
- Esto derivó en una estructura de castas donde solo podían entrar los “que estaban calificados”
Estructura de la comunidad Perl y la ruptura de Perl 6
- Perl se apoyó en el principio TIMTOWTDI (There Is More Than One Way To Do It) para enfatizar la flexibilidad
- Sin embargo, ese principio reforzó el conservadurismo frente al cambio del lenguaje: el núcleo quedó fijo y la innovación se expulsó fuera de CPAN
- La expansión centrada en CPAN terminó provocando dependency hell
- El surgimiento de Perl 6 fue el resultado de conflictos internos y el símbolo de una ruptura en la comunidad
- Perl 5 buscaba practicidad y estabilidad, mientras Perl 6 buscaba innovación e ideales, y ocurrió una dualidad cultural
- El desarrollo de Perl 6 se retrasó más de 15 años, y fue evaluado como uno de los proyectos de código abierto más “waterfall”
- En esa época, Perl era poco amigable para la entrada de nuevos desarrolladores y la comunidad se volvió más cerrada
El ascenso de lenguajes competidores
- Ruby, con sintaxis similar a Perl, adoptó la “felicidad del programador” y la amabilidad como valores centrales
- Ruby on Rails tuvo un éxito explosivo gracias a herramientas amigables para desarrolladores y una estructura consistente
- Perl creó varios frameworks similares, pero falló en expandirse por falta de interoperabilidad y facilidad de entrada
- PHP se presentó como un “lenguaje centrado en el usuario”, y su instalación y despliegue simples le permitieron expandirse masivamente
- Al ser la base de plataformas de blogs como WordPress, se consolidó como el lenguaje de entrada de una generación de desarrolladores web
- Python partió de un trasfondo académico y mantuvo una evolución gradual y principios de diseño claros
- Tras la adopción por parte de Google creció de manera estable y aseguró utilidad práctica con la filosofía de “batteries included”
El presente y el legado de Perl
- Perl sigue existiendo como lenguaje de scripting POSIX instalado por defecto en la mayoría de sistemas
- Todavía se usa en numerosos sistemas heredados y scripts de automatización
- Sin embargo, casi no se elige como opción predeterminada en proyectos nuevos
- Las principales innovaciones que dejó Perl
- Integración de expresiones regulares y sintaxis expandida
- Distribución de paquetes en internet y verificación de firmas mediante CPAN
- Difusión del TAP (Test Anything Protocol) y de la idea de integración continua (CI) de pruebas automatizadas
- La integración de funcionalidades de POSIX que eliminó la barrera entre shell y programación de sistemas
- Innovación en documentación mediante el sistema de documentos POD
Conclusión: el éxito y declive creados por la cultura
- Perl conectó en la fase inicial de la web de los años 90 las dos culturas (administradores UNIX y desarrolladores web), logrando un crecimiento explosivo
- Pero una cultura conservadora y una comunidad cerrada no se adaptaron al cambio y lo hicieron caer del mainstream
- Aun así, Perl se valora como uno de los lenguajes que contribuyeron a sentar las bases del desarrollo de software moderno
- El autor sostiene que Perl no desaparecerá y que, mientras exista POSIX, Perl también existirá
- Hoy, lenguajes emergentes como Rust o TypeScript están recorriendo de nuevo la trayectoria de transición cultural que vivió Perl en el pasado
2 comentarios
Cuando un texto dice que Perl y Ruby tienen una sintaxis parecida, tiendo a dudar de la originalidad del autor. Es una frase que suele citarse en textos clásicos de crítica a Perl, pero nunca lo sentí así en el uso real, así que me da la impresión de que rellenaron contenido y copiaron textos viejos, o dejaron el resto en manos de una IA, y por eso las viejas críticas al Perl legado terminaron aceptándose sin ningún cuestionamiento.
Opinión de Hacker News
Siempre me pesó esa estética del “monjes y magos” en la comunidad de Perl
Tampoco me gustaba esa cultura de querer verse listo con código de una sola línea; Python se sentía mucho más serio y “normal”
La sintaxis parece diseñada para ser compleja a propósito, y hay muchas partes que sin documentación son casi imposibles de entender
Claro, en su momento la concisión del código habrá sido importante, pero en 2025 esto es demasiado poco amigable
Se siente como si una idea improvisada de alguien en D&D hubiera quedado grabada para siempre en el libro de reglas
En cambio, Python empujó la idea de “una forma clara” y fomentó código limpio
Perl también podía escribirse de forma bonita, pero eso dependía de que el desarrollador lo eligiera conscientemente
Python, al forzar la indentación, hacía que incluso los principiantes lograran cierto nivel de legibilidad
Pero el lenguaje en sí era tan expresivo que eso terminaba siendo veneno para el código compartido
Para procesamiento de texto, Perl sigue siendo de lo mejor, pero como lenguaje para trabajo colaborativo era difícil
A diferencia de la imagen exagerada de la comunidad, me impresionó su lado humano
Lo juguetón de Perl hasta se sentía más honesto y menos solemne
Pero al final Python se volvió dominante y Perl fue quedando en el olvido
Creo que la cultura dogmática de la comunidad de Perl aceleró la caída del lenguaje
Un amigo que me enseñó Linux era fanático de Perl, pero su actitud de RTFM y burlarse de quien no sabía terminó haciendo que dejáramos de hablarnos
Casi no tuve contacto con la comunidad de Perl; lo usé en una época en la que resolvía todo buscando en Google
Tenía demasiados símbolos como @ y %, así que era menos accesible que Ruby o Python
Ruby fue diseñado desde el principio como lenguaje orientado a objetos y se sentía mucho más natural
Cuando el optional type hinting de Python es impreciso, a veces solo genera más confusión
Si tuviera que ser exacto, entonces ya sería un sistema de tipos obligatorio, no una pista opcional
En IRC en los 90 alguien me dijo RTFM, pero resultó ser una broma y a la vez un evento de bienvenida para principiantes
De hecho terminé tomando café con magos de Perl y recibiendo mentoría, y esa experiencia fue un punto de inflexión en mi vida como programador
Todavía recuerdo lo que me dijeron — “Perl it forward!”
Esa idea de “sufrir, recibir dopamina al final y confundir eso con una buena experiencia” está extendida por toda la industria informática
Siempre es confuso, una cadena interminable de “¿por qué hicieron esto así?”
Siendo honestos, Perl desapareció porque otros lenguajes eran mejores
Igual que no puedes construir un producto con una placa de prototipado, Perl era el resultado de la experimentación
Por ejemplo, si recibías
@arraycomo escalar, solo devolvía la longitud: esa clase de dependencia del contextoComo Toyota vs Honda, en la práctica era más bien una diferencia de gustos
La sintaxis de referencias de Perl, su OO incómodo y configuraciones repetitivas como use strict; / use warnings; terminaban agotando
Rails era mucho más conciso y seguro, y además el momento histórico fue perfecto
Perl fue mi primer lenguaje amado, pero en 2012 me pasé por completo a Python
Incluso ahora, cuando veo scripts de Perl en código legado, siento alivio de haber hecho el cambio
El código en Perl casi no tenía comentarios, y el abuso de expresiones regulares hacía que la legibilidad fuera terrible
Ahora resuelvo esos patrones con el enfoque orientado a objetos de Python
Usé mucho Perl, pero al final me cambié a Python por los problemas de calidad en CPAN
Los módulos de CPAN se rompían seguido y muchas veces había que arreglarlos a mano
En los 90 y principios de los 2000 esa diferencia sí era bastante notable
Perl murió porque otros lenguajes lograron tener ecosistemas como CPAN y,
además, la sintaxis flexible de Perl no era adecuada para la colaboración en equipo
Podías distribuir módulos fácilmente sin SWIG ni magia compleja de tipos,
y el retraso interminable del desarrollo de Perl 6 fue el golpe final
en entornos colaborativos, la carga cognitiva se disparaba exponencialmente
Python externalizó ese debate con el sistema PEP y fue mucho más eficiente