Generates a list of a given length.
An efficient implementation of Int-indexed arrays (both mutable and immutable), with a powerful loop optimisation framework .
It is structured as follows:
Data.Vector: Boxed vectors of arbitrary types. Data.Vector.Unboxed: Unboxed vectors with an adaptive representation based on data type families. Data.Vector.Storable: Unboxed vectors of Storable types. Data.Vector.Primitive: Unboxed vectors of primitive types as defined by the primitive package. Data.Vector.Unboxed is more flexible at no performance cost. Data.Vector.Generic: Generic interface to the vector types.
There is also a (draft) tutorial on common uses of vector.
Changes in version 0.10.0.1
* Require primitive to include workaround for a GHC array copying bug
Changes in version 0.10
* NFData instances
* More efficient block fills
* Safe Haskell support removed
Efficient algorithms for vector arrays
DEPRECATED. Use vector-binary-instances >= 0.2 instead.
The library provides binary instances for boxed and unboxed vector types. The code is based on the vector-binary-instances package but restricts instances to monomorphic vector types.
Instances for Binary for the types defined in the vector package, making it easy to serialize vectors to and from disk. We use the generic interface to vectors, so all vector types are supported. Specific instances are provided for unboxed, boxed and storable vectors.
To serialize a vector:
> *Data.Vector.Binary> let v = Data.Vector.fromList [1..10]
> *Data.Vector.Binary> v
> fromList [1,2,3,4,5,6,7,8,9,10] :: Data.Vector.Vector
> *Data.Vector.Binary> encode v
> Chunk "\NUL\NUL\NUL\NUL\NUL...\NUL\NUL\NUL\t\NUL\NUL\NUL\NUL\n" Empty
Which you can in turn compress before writing to disk:
> compress . encode $ v
> Chunk "\US\139\b\NUL\NUL\N...\229\240,\254:\NUL\NUL\NUL" Empty
A buffer type that can easily be converted to a Data.Vector.Storable vector from the vector package and compatible with hmatrix.
Elements are pushed into the buffer. When the buffer is converted to a read-only vector, the last-pushed element occurs at the end.
Monadic map functions also operate so that the last-pushed element is treated last.
ByteStrings as type synonyms of Storable Vectors of Word8s
This package provides a ready to use implementation of the vector clock data-structures, which may be used to version messages and determine causality relations between them in a distributed system.
See Fundamentals of Distributed Computing: A Practical Tour of Vector Clock Systems by R. Baldoni and M. Raynal for an overview of vector clocks.
See the README.md file for details.
Provides sources and sinks for vectors.
This package provides bindings to the fftw library for one-dimensional vectors. It provides both high-level functions and more low-level manipulation of fftw plans.
We provide three different modules which wrap fftw's operations:
* Numeric.FFT.Vector.Unnormalized contains the raw transforms;
* Numeric.FFT.Vector.Invertible scales the backwards transforms to be true inverses;
* Numeric.FFT.Vector.Unitary additionally scales all transforms to preserve the L2 (sum-of-squares) norm of the input.
Note that this package is currently not thread-safe.
Functor-lazy vectors perform the fmap operation in constant time, whereas other vectors require linear time. All vector operations are supported except for slicing. See http://github.com/mikeizbicki/vector-funxtorlazy for details on how this module works under the hood.
This package defines instances of the Foldable, Unfoldable, Collection, Sequence and Indexed classes from Data.Collections for all pure Vector types (those found in Data.Vector, Data.Vector.Unboxed, Data.Vector.Primitive, Data.Vector.Storable).
Memory map immutable and mutable vectors.
Read instances for Data.Vector. Right now, only for unboxed vectors. Others should be easy to implement, though.
It is planned to have read instances included in the vector library in the future. This release is only temporary.
vector >= 0.8 has Read instances for all immutable vectors.
vector-space provides classes and generic operations for vector spaces and affine spaces. It also defines a type of infinite towers of generalized derivatives. A generalized derivative is a linear transformation rather than one of the common concrete representations (scalars, vectors, matrices, ...).
Warning: this package depends on type families working fairly well, requiring GHC version at least 6.9.
Project wiki page: http://haskell.org/haskellwiki/vector-space
© 2008-2012 by Conal Elliott; BSD3 license.
Data.Map.Vector provides MapVector, a wrapper around Map from containers which supports constant maps, i.e. maps containing only one value. This allows an identity under intersection and an Applicative instance. It also has instances of AdditiveGroup, VectorSpace, InnerSpace, and Num with appropriate value types. Provides operations for addition, subtraction, element-wise multiplication (through Num), scalar multiplication (through VectorSpace), and dot product.
Show more results