Translate

domingo, 20 de diciembre de 2020

Primeros pasos con Clojure, parte 10

 


Seguimos con Clojure... 

Las funciones se pueden definir para tomar diferentes números de parámetros. Funciona como el pattetn matching, veamos un ejemplo : 

(defn messenger

  ([]     (messenger "Hello world!"))

  ([msg]  (println msg)))


Esta función esta declarada 2 veces con 0 parámetros y 1 parámetro. La función de 0 parámetros llama a la función de 1 parámetro con un valor predeterminado para imprimir. Invocamos estas funciones pasando el número apropiado de argumentos:

user=> (messenger)

Hello world!

nil


user=> (messenger "Hello class!")

Hello class!

nil