martes, diciembre 18, 2007

Perl cumple veinte años

Estuve a punto de convertirme en un hereje: casi de casualidad me entero (en inglés) de que mi estimadísimo Perl cumple veinte años.

Llegué al Perl indirectamente, allá por el año 1999 o 2000. En aquel entonces solía trabajar con grandes cantidades de texto y encontraba incomprensiblemente limitada la función de búsqueda y reemplazo implementadas en los programas estándar —procesadores de texto y maquetadores—. Me repetía a mí mismo que algo mejor tendría que existir, porque no me parecía que mis necesidades fueran extraordinarias, ya que el cambio masivo de información, por ejemplo, surgía de la propia naturaleza del trabajo. Y no me convencía que yo tuviera que hacer manualmente el trabajo que debería hacer automáticamente la computadora.

Así fue cómo descubrí las expresiones regulares: dejé de estar limitado por las búsquedas literales y pasé a buscar y reemplazar texto por patrones. Cambié el procesador de texto por un editor de texto, el Word por el BBEdit. Sin embargo, la implementación del BBEdit era parcial, de forma que poco a poco y envalentonado por los resultados decidí seguir los consejos de los entendidos en el tema y aprender algo de Perl, ya que este lenguaje —decían— implementaba una versión más potente de las expresiones regulares, entre otras muchas funciones útiles. Y, además, totalmente gratuito, un asunto decisivo en un país que iba rumbo al desastre. Otro punto importante fue la increíble generosidad con la que los miembros de la comunidad Perl compartían su conocimiento, lo que sin duda simplificó mi aprendizaje del lenguaje y me enseñó a valorarlo.

No me arrepiento para nada. Si bien ahora estoy programando muy poco, cada vez que necesito manipular un texto me pregunto: ¿puedo hacerlo con un hash? Entonces recurro a mi lenguaje favorito: del Perl me sigue gustando la flexibilidad para diseñar la estructura de los programas, la libertad en la sintaxis —a pesar del riesgo de la ilegibilidad—, la sutileza en la lectura de los contextos —aunque esta última característica me dio muchos dolores de cabeza— y la velocidad en el procesamiento de los hashes.

Cada tanto me sugieren que aprenda otros lenguajes que mejoran —dicen— al Perl en uno u otro aspecto. En principio no niego esa posibilidad, pero para mí no tiene sentido el cambio de entorno, porque siendo Perl todavía un lenguaje mantenido y en activo, aunque lento, desarrollo, me parece que por mis necesidades de programación no se justifica el esfuerzo.

Mejor aprovecho mi tiempo en aprender y profundizar temas más directamente relacionados con mi profesión.

Actualización: Para resaltar el aniversario se liberó la v.5.10 de Perl, una actualización mayor y estable del lenguaje, con numerosas mejoras —más información (en inglés)—. La nueva versión puede bajarse de CPAN, de Perl.org, o como un archivo de Torrent.