Elixir y la máquina virtual de Erlang

Elixir

En el trabajo soy desarrollador de software y uso PHP y JavaScript el 99% del tiempo. Pero siempre estoy buscando alternativas en el área de programación, herramientas que me permitan ser más eficiente o lenguajes de los que pueda aprender algo diferente a lo acostumbrado, esto me permite tener diferentes puntos de vista.

En el pasado esto me llevo a aprender lenguajes tan distintos como Objective C para hacer algunas app en las primeras versiones de iphone OS. Hoy estoy explorando el mundo de Elixir me ha llamado mucho la atención ya que es un lenguaje que se compila a un bytecode que se ejecuta en la máquina virtual de erlang, esto hace que las aplicaciones escritas en Elixir cuenten con algunas características que las hacen ideales para ambientes de alto tráfico, la Erlang VM permite ejecutar sistemas:

Esta máquina virtual ejecuta procesos (diferentes a los procesos del sistema operativo) que son mucho más ligeros y puede ejecutar millones de ellos a la vez. La comunicación entre ellos es a través de mensajes.

Algunas empresas que ya están usando esta teconología:

Retomando a la parte del lenguaje en sí, Elixir es un lenguaje dinámico y funcional, esto quiere decir que no se necesita declarar los tipos de datos en el código, y que usa funciones para la transformación de datos, no soporta orientación a objetos. Su creador José Valim de Brasil tomo la sintaxis del código ruby.

Tiene su propio manejador de paquetes llamado Hex en el que se puede encontrar librerías publicadas por la comunidad para facilitar el desarrollo de los sistemas.

Para la parte web, Chris McCord creó un framework web para aplicaciones que requieren comunicaciones en tiempo real Phoenix

Les invito a visitar los sitios oficiales para más información.