Erlang: concurrente, distribuido y en tiempo real

Después de tiempo desarrollando aplicaciones casi exclusivamente en PHP, me encuentro en el problema de que PHP no es, ni mucho menos, un lenguaje de uso general, sino un lenguaje desarrollado y pensado para la creación de aplicaciones web de forma rápida y, de forma controlada, útil y potente para grandes proyectos.

Pero fuera de este entorno, en el background de las grandes empresas donde todo debe de ser escalable, redundante y en alta disponibilidad, y sobre todo cuando las aplicaciones no son para servidores web, usar un lenguaje que no está preparado para el desarrollo deseado, puede conllevar muchos quebraderos de cabeza, e incluso, no alcanzar el objetivo deseado.

Después de revisar varios lenguajes de programación (Java, Python, Ruby…) vi que hay también lenguajes de programación diseñados para tareas concretas y que, saliéndose de la especificación de lenguajes de ámbito general, se especializan en ciertas tareas, tal y como Perl es para el análisis de textos y PHP para la web, encontré esta pequeña joya, Erlang, que es un lenguaje específico para desarrollos que requieran de control de concurrencia, programación distribuida y desarrollos de tiempo real.

El lenguaje en sí ha sido diseñado por Ericsson y dispone de mucha documentación en su sitio web. Su sintaxis no es la típica copia de C que se seguía para Java, C# y PHP, entre otros, sino que tiene un formato nuevo, lo cual hace más lenta la curva de aprendizaje, pero para los programadores que ya hayan usado más de dos lenguajes de programación del tipo Ruby, Python, PHP y/o Perl, hacerse a una nueva sintaxis no será tanto problema.

Iré informando sobre mis avances con este lenguaje, a ver si me deja buen sabor de boca ;-)