Cómo usar fn en Clojure – Resuelto

La función fn en Clojure se utiliza para crear funciones anónimas, lo que nos permite definir funciones rápidas para ser utilizadas en un contexto local, como en una operación de mapeo o reducción.

Definir una función con fn

Podemos crear una función anónima utilizando fn, y se puede pasar como argumento a otras funciones o asignarla a una variable:

(def suma (fn [a b] (+ a b)))

En este ejemplo, hemos definido una función que suma dos números y la hemos asignado a la variable suma. Ahora podemos usarla de la siguiente forma:

(suma 3 4) ;; 7

Usar funciones anónimas dentro de otras funciones

Una de las principales aplicaciones de fn es su uso en funciones como map, filter o reduce. Por ejemplo, podemos usar una función anónima dentro de map para multiplicar cada número de una lista:

(map (fn [x] (* x 2)) [1 2 3 4]) ;; (2 4 6 8)