The fixed-vector package
Generic library for vectors with statically known size. Implementation is based on <http://unlines.wordpress.com/2010/11/15/generics-for-small-fixed-size-vectors/> Same functions could be used to work with both ADT based vector like
> data Vec3 a = a a a
Tuples are vectors too:
>>> sum (1,2,3) 6
Vectors which are represented internally by arrays are provided by library. Both boxed and unboxed arrays are supported.
Library is structured as follows:
[@Data.Vector.Fixed@] Generic API. It's suitable for both ADT-based vector like @Complex@ and array-based ones.
[@Data.Vector.Fixed.Cont@] Continuation based vectors. Internally all functions use them.
[@Data.Vector.Fixed.Mutable@] Type classes for array-based implementation and API for working with mutable state.
[@Data.Vector.Fixed.Unboxed@] Unboxed vectors.
[@Data.Vector.Fixed.Boxed@] Boxed vector which can hold elements of any type.
[@Data.Vector.Fixed.Storable@] Unboxed vectors of @Storable@ types.
[@Data.Vector.Fixed.Primitive@] Unboxed vectors based on pritimive package.
[@Data.Vector.Fixed.Monomorphic@] Wrappers for monomorphic vectors
Changes in 0.4.3.0
* Typeable instance for @S@ and @Z@ added.
Changes in 0.4.2.0
* 1-tuple @Only@ added.
* @fromList'@ and @fromListM@ added.
* @apply@ functions from @Arity@ type class generalized.
Changes in 0.4.1.0
* @cons@ function added.
* Getter to @Fun@ data type added.
Changes in 0.4.0.0
* Wrapper for monomorphics vectors is added.
* @VecList@ is reimplemented as GADT and constructors are exported.
* Constructor of ContVecT is exported
* Empty @ContVecT@ is implemented as @empty@.
* @Typeable@, @Foldable@ and @Traversable@ instances are added where appropriate
Changes in 0.3.0.0
* Wrappers for monomorphic types added.
Changes in 0.3.0.0
* @Vector@ type class definition is moved to the @D.V.F.Cont@ module.
* Indexing function restored.
* @unfoldr@ added.
Changes in 0.2.0.0
* Continuation-based vector added.
* Right fold added.
* @tailWith@, @convertContinuation@, and @!@ from @Data.Vector.Fixed@ removed.
* @Vector@ instance for tuples added.
Changes in 0.1.2
* @imap@, @imapM@, @ifoldl@, @ifoldM@, @zipWithM@, @izipWithM@ functions are added.
* @VectorN@ type class added.
Changes in 0.1.1
* @foldM@ and @tailWith@ added. Type synonyms for numbers up to 6 are added. @Fun@ is reexported from @Data.Vector.Fixed@.
|Versions||0.1, 0.1.1, 0.1.2, 0.1.2.1, 0.2.0.0, 0.3.0.0, 0.3.0.1, 0.4.0.0, 0.4.1.0, 0.4.2.0, 0.4.3.0, 0.4.4.0, 0.5.0.0, 0.5.1.0, 0.5.1.2, 0.6.0.0, 0.6.1.0, 0.6.1.1, 0.6.2.0, 0.6.3.0, 0.6.3.1, 0.6.4.0, 0.7.0.0, 0.7.0.1, 0.7.0.2, 0.7.0.3, 0.8.0.0, 0.8.1.0|
|Dependencies||base (>=3 && <5), primitive [details]|
|Author||Aleksey Khudyakov <email@example.com>|
|Maintainer||Aleksey Khudyakov <firstname.lastname@example.org>|
|Source repository||head: hg clone http://bitbucket.org/Shimuuar/fixed-vector
head: git clone http://github.com/Shimuuar/fixed-vector
|Uploaded||Sat May 18 11:02:22 UTC 2013 by AlexeyKhudyakov|
|Distributions||LTSHaskell:0.8.1.0, NixOS:0.8.1.0, Stackage:0.8.1.0, Tumbleweed:0.8.1.0|
|Downloads||5528 total (78 in the last 30 days)|
|Status||Docs uploaded by user
Build status unknown [no reports yet]
For package maintainers and hackage trustees