¿Hay alguna manera de eliminar elementos en una lista anidada por tipo de forma que (1 [2] 3 (4 [5] 6)) se convierta en (1 3 (4 6)) si deseo eliminar solo los vectores?¿Cómo puedo eliminar un elemento por tipo de una lista anidada o vector en Clojure?
Usando el paseo, puedo reemplazar todos los vectores con nulo, pero no puedo encontrar la manera de eliminarlos.
(clojure.walk/postwalk
#(if (vector? %) nil %) '(1 [2] 3 (4 [5] 6)))
=>(1 nil 3 (4 nil 6))
Esto parece exactamente lo que estaba buscando. No se me ocurrió que podía realizar una función solo en las subestructuras. Gracias. – dansalmo