haskell@gentoo.org Gentoo Haskell An API for efficient and convenient construction of vectors. It provides the composable `Builder` abstraction, which has instances of the `Monoid` and `Semigroup` classes. [Usage] First you use the `Builder` abstraction to specify the structure of the vector. Then you execute the builder to actually produce the vector. [Example] The following code shows how you can efficiently concatenate different datastructures into a single immutable vector: > >import qualified Data.Vector as A >import qualified VectorBuilder.Builder as B >import qualified VectorBuilder.Vector as C > > >myVector :: A.Vector a -> [a] -> a -> A.Vector a >myVector vector list element = > C.build builder > where > builder = > B.vector vector <> > foldMap B.singleton list <> > B.singleton element