The vector package

[Tags:bsd3, library, test]

An efficient implementation of Int-indexed arrays (both mutable and immutable), with a powerful loop optimisation framework .

It is structured as follows:

Boxed vectors of arbitrary types.
Unboxed vectors with an adaptive representation based on data type families.
Unboxed vectors of Storable types.
Unboxed vectors of primitive types as defined by the primitive package. Data.Vector.Unboxed is more flexible at no performance cost.
Generic interface to the vector types.

Each module has a Safe version with is marked as Trustworthy (see

There is also a (draft) tutorial on common uses of vector.

Please use the project trac to submit bug reports and feature requests.

Changes in version 0.8


Versions 0.1, 0.2, 0.3, 0.3.1, 0.4, 0.4.1, 0.4.2, 0.5, 0.6,,, 0.7,, 0.7.1, 0.8, 0.9, 0.9.1, 0.10,,,,,,,,,,,, (info)
Change log Changelog
Dependencies base (==4.*), primitive (==0.4.*) [details]
License BSD3
Copyright (c) Roman Leshchinskiy 2008-2011
Author Roman Leshchinskiy <>
Maintainer Roman Leshchinskiy <>
Stability Unknown
Category Data, Data Structures
Home page
Bug tracker
Uploaded Mon Aug 29 00:16:21 UTC 2011 by RomanLeshchinskiy
Distributions Arch:, Debian:, Fedora:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:, Tumbleweed:
Downloads 200605 total (124 in the last 30 days)
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]




boundschecksEnable bounds checkingEnabledAutomatic
unsafechecksEnable bounds checking in unsafe operations at the cost of a significant performance penaltyDisabledAutomatic
internalchecksEnable internal consistency checks at the cost of a significant performance penaltyDisabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees