Srotolare / argomenti splat in Common Lisp
-
23-09-2019 - |
Domanda
Di 'Ho una lista di argomenti:
> (setf format-args `(t "it's ~a" 1))
(T "it's ~a" 1)
Come posso poi "splat" o "srotolare" questo in una serie di argomenti, piuttosto che un singolo argomento lista, per la fornitura alla funzione di formattazione? cioè Vorrei funzione la seguente chiamata a prendere posto:
> (format t "it's ~a" 1)
Per riferimento, avrei scritto quanto segue in pitone o ruby:
format(*format-args)
Sono sicuro che si può fare, ma forse mi sto pensando sbagliato. Inoltre non aiuta il fatto che il nome per questa operazione non sembra essere terribilmente bene concordato ...
Soluzione
Oops! Ho dovuto ricordare come javascript lo fa.
Risulta si utilizza la funzione di applicare, come in:
(apply #'format format-args)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow