Pasar lista de variables individualmente a la función clojure

He estado jugando con clojure, y decidí hacer una función de orden superior que combine mapcat y list para emular este comportamiento:

Clojure> (mapcat list '(1 2 3 4) '(5 6 7 8))
(1 5 2 6 3 7 4 8)

mi primer intento fue definir mapcatList de la siguiente manera:

Clojure> (defn mapcatList[& more](mapcat list more))
#'sandbox99/mapcatList
Clojure> (mapcatList '(1 2 3 4) '(5 6 7 8))
((1 2 3 4) (5 6 7 8))

Obviamente, la función no se comporta como me gustaría, y creo que esto se debe a que las dos listas se colocan en una lista y se pasan como un solo argumento, no como dos. Pude remediar la situación con lo siguiente,

Clojure> (defn mapcatList[x y & more](mapcat list x y))
#'sandbox99/mapcatList
Clojure> (mapcatList '(1 2 3 4) '(5 6 7 8))
(1 5 2 6 3 7 4 8)

Esta solución funciona bien con dos listas, pero me gustaría que la función funcione con un número variable de argumentos.

Mi pregunta: ¿Cómo puedo pasar un número variable de argumentos a una función, luego desestructurarlos para que se pasen juntos como argumentos individuales a 'mapcat list'?

Respuestas a la pregunta(4)

Su respuesta a la pregunta