Antes de empezar, la canción de este blog será "Dramamine" por Modest Mouse, espero les guste.
El invitado del podcast es Joe Armstrong, desarrollador del lenguaje de programación Erlang, desarrollado por Ericsson.
En el podcast habla sobre el desarrollo de Erlang, que fue desarrollado por la empresa Ericsson, el lenguaje nace de la necesidad de la empresa de telecomunicaciones de desarrollar código que sea tolerante a fallas, que tenga la capacidad de manejar múltiples procesos simultáneamente de forma segura y con la posibilidad de hacer cambios en el código sin reiniciar el programa, algo conocido como hot code loading, que considero como una de las funcionalidades más interesantes de Erlang, ya que el código en Erlang se divide por módulos, la máquina virtual de Erlang permite cargar dos módulos de un programa de forma simultánea, uno viejo y uno nuevo, con la posibilidad de cambiar al código nuevo sin reiniciar el programa.
Joe Armstrong habla en el podcast de los inicios de Erlang, desarrollado como un experimento en Prolog inicialmente, los cambios que se tuvieron que hacer para que Ericsson utilizara Erlang en términos de eficiencia, finalmente habla de algunos conceptos de Erlang que no son tan comunes en lenguajes de programación mainstream, como pattern matching, que permite definir comportamientos específicos según los parámetros que recibe una función.
Otro aspecto que me pareció interesante es el enfoque de Joe Armstrong sobre Erlang en términos de tolerancia a fallos, ya que comenta que en otros lenguajes de programación se hace énfasis en programación defensiva para prevenir errores, mientras Erlang tiene un enfoque de "fail fast" que permite a los procesos fallar sin detener la ejecución del programa, en cambio el hecho de que se permita a los procesos fallar permite que el supervisor de procesos inicie un proceso nuevo, este enfoque flexible me parece que permite al desarrollador enfocarse en la funcionalidad de su aplicación sin utilizar mucho tiempo en prevenir errores (sí, estoy hablando de Java).
Erlang me parece un lenguaje excelente para aprender programación funcional, me parece que su sintáxis es mucho más fácil de entender que en un dialecto de Lisp (como Clojure), al menos para principiantes en el paradigma de programación funcional.
Eso es todo por este blog, nos leemos pronto.
Wololo.
No hay comentarios:
Publicar un comentario