First, I assume each structure-specific sequences would have different ways to remove an item: *Vectors* could be by index, *List* could be remove first or last, *Set* should be passing of the actual item to remove, etc.

Second, I assume there are some methods for removal that are structure agnostic; they work on *seq* interface.

Since sequences are immutable in Clojure, I suspect what you're actually doing is making a cheap copy of the original, only without the original item. This means list comprehension could be used for removal, but I suspect it would be unnecessarily verbose.

Please give some idiomatic examples of the different ways to remove items from Clojure sequences.