Sebastian Durandeu Blog

  • Visitantes

Archive for November, 2010

Clojure: Links de Introducción

Posted by sebastiandurandeu on November 15, 2010

Clojure es un lenguaje dinámico y funcional que se puede ejecutar sobre la JVM (Java Virtual Machine) desarrollado por Rich Hickey. Es parte de la familia de lenguajes “herederos” de LISP.

El lenguaje trabaja con datos inmutables, con lo cual no puedo modificar los valores que defino. Si digo que “a” vale 10, para hacer que  valga 11, necesito volver a crear “a” con valor 11. Otra característica que me llamó la atención, esta la homoiconicidad (si, un poco largo, en inglés “homoiconic”). Esto quiere decir algo así como “el código también es un dato”; en algún sentido esto facilita que los programas creados en Clojure generen fácilmente código ejecutable.

Por ultimo, una recomendación personal para los que nunca programaron en un lenguaje funcional antes (como yo…)  empiecen por entender como se usan los paréntesis en el código:

Si en C# una función es: void MiMetodo(string miValor) { … } y se llama MiMetodo(“Hola”)

En Clojure es (defn MiMetodo [mivalor] (…) ) y se llama (MiMetodo “Hola”)

A continuación les dejo una serie de links que me fueron útiles para introducirme a la programación funcional en Clojure:

Posted in Clojure, FIUBA, Programming | 1 Comment »