Clojure - Funzioni variabili

Le funzioni variadiche sono funzioni che accettano un numero variabile di argomenti (alcuni argomenti sono opzionali). La funzione può anche specificare il simbolo "&" e commerciale per accettare un numero arbitrario di argomenti.

L'esempio seguente mostra come questo può essere ottenuto.

(defn demo 
   [message & others]
   (str message (clojure.string/join " " others)))

La dichiarazione di funzione sopra ha il simbolo "&" accanto all'argomento altri, il che significa che può accettare un numero arbitrario di argomenti.

Se invochi la funzione sopra come

Esempio

(demo "Hello" "This" "is" "the" "message")

Produzione

Di seguito sarà l'output.

“HelloThis is the message”

Il ‘clojure.string/join’ viene utilizzato per combinare ogni singolo argomento stringa, che viene passato alla funzione.