Generic vectors with statically known size.
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 aTuples 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.Unboxed: Unboxed vectors which select best representation using types.
Data.Vector.Fixed.Strict: Strict boxed vector which can hold elements of any type.
Data.Vector.Fixed.Boxed: Lazy boxed vector which can hold elements of any type.
Data.Vector.Fixed.Storable: Unboxed vectors of Storable types.
Data.Vector.Fixed.Primitive: Unboxed vectors backed by single
ByteArrayData.Vector.Fixed.Mutable: Type classes for array-based implementation and API for working with mutable state.