fixed-vector: Generic vectors with statically known size.

[ bsd3, data, library ] [ Propose Tags ]

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.0.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.

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 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, 0.9.0.0, 1.0.0.0, 1.1.0.0, 1.2.0.0, 1.2.1.0, 1.2.1.1, 1.2.2.1, 1.2.3.0
Dependencies base (>=3 && <4.8), primitive [details]
License BSD-3-Clause
Author Aleksey Khudyakov <alexey.skladnoy@gmail.com>
Maintainer Aleksey Khudyakov <alexey.skladnoy@gmail.com>
Revised Revision 1 made by HerbertValerioRiedel at 2018-09-02T21:30:46Z
Category Data
Bug tracker https://github.com/Shimuuar/fixed-vector/issues
Source repo head: hg clone http://bitbucket.org/Shimuuar/fixed-vector
head: git clone http://github.com/Shimuuar/fixed-vector
Uploaded by AlexeyKhudyakov at 2013-04-29T17:53:53Z
Distributions LTSHaskell:1.2.3.0, NixOS:1.2.3.0, Stackage:1.2.3.0
Reverse Dependencies 12 direct, 23 indirect [details]
Downloads 29273 total (126 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]