title: Set operators not provided by Data.Vector of Haskell, what is the reason
body: <p>My application involves heavy array operations (e.g. <code>log(1)</code> indexing), thus <a href="http://hackage.haskell.org/packages/archive/vector/0.9.1/doc/html/Data-Vector.html" rel="nofollow">Data.Vector</a> and <a href="http://hackage.haskell.org/packages/archive/vector/0.9.1/doc/html/Data-Vector-Unboxed.html" rel="nofollow">Data.Vector.Unboxed</a> are preferred to <a href="http://www.haskell.org/ghc/docs/latest/html/libraries/base/Data-List.html" rel="nofollow">Data.List</a>. 
  It also involves many set operations (e.g. intersectBy), which however, are not provided by the Data.Vector. </p>
  
  <p>Each of these functions can be implemented like in Data.List in 3-4 lines . 
  Is there any reason they all not implemented with Data.Vector? I can only speculate. Maybe set operations in Data.Vector is discouraged for performance reasons, i.e. intersectBy would first produce the intersection through list comprehension and then convert the list into a Data.Vector?</p>