En primer lugar, asumir cada uno secuencias específicas de estructura tendrían diferentes formas de eliminar un elemento: vectores podría ser mediante un índice, Lista podría ser eliminar primero o el último, Establecer debe pasar del artículo real para eliminar , etc.¿Cómo puedo eliminar un elemento de una secuencia en Clojure?
En segundo lugar, supongo que hay algunos métodos de eliminación que son independientes de la estructura; funcionan en seq interfaz.
Dado que las secuencias son inmutables en Clojure, sospecho que lo que realmente está haciendo es hacer una copia barata del original, solo que sin el artículo original. Esto significa que la comprensión de la lista podría utilizarse para la eliminación, pero sospecho que sería innecesariamente detallado.
Por favor, da algunos ejemplos idiomáticos de las diferentes formas de eliminar elementos de las secuencias de Clojure.
Gracias Brian, esto es lo que estaba buscando. Su mención de subvec no parece coincidir con la documentación: "Devuelve un vector persistente de los elementos en vector desde el inicio (inclusive) hasta el final (exclusivo). Si no se proporciona el extremo, el valor predeterminado es (vector de conteo)". ¿Quiso decir que podría hacer dos llamadas subvec para omitir el elemento "eliminado"? – rcampbell
Sí, eso es lo que quise decir. En retrospectiva, puede ser demasiado torpe incluso para considerar. Lo eliminaré de la publicación. –
['subvec'] (http://clojuredocs.org/clojure_core/clojure.core/subvec) vale la pena mencionar (para vectores), porque opera en O (1) tiempo. –