Hoogle Search
Within LTS Haskell 24.35 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
-
Vec: length-indexed (sized) list This package provides length-indexed (sized) lists, also known as vectors.
data Vec n a where VNil :: Vec 'Nat.Z a (:::) :: a -> Vec n a -> Vec ('Nat.S n) aThe functions are implemented in four flavours:- naive: with explicit recursion. It's simple, constraint-less, yet slow.
- pull: using Fin n -> a representation, which fuses well, but makes some programs hard to write. And
- data-family: which allows lazy pattern matching
- inline: which exploits how GHC dictionary inlining works, unrolling recursion if the size of Vec is known statically.
Similar packages
- linear has V type, which uses Vector from vector package as backing store. Vec is a real GADT, but tries to provide as many useful instances (upto lens).
- vector-sized Great package using GHC.TypeLits. Current version (0.6.1.0) uses finite-typelits and Int indexes.
- sized-vector depends on singletons package. vec isn't light on dependencies either, but try to provide wide GHC support.
- fixed-vector
- sized also depends on a singletons package. The Sized f n a type is generalisation of linear's V for any ListLike.
- clash-prelude is a kitchen sink package, which has CLaSH.Sized.Vector module. Also depends on singletons.
package
vector-bytes-instances Serial (from the bytes package) for Vector (from the vector package) Serial (from the bytes package) for Vector (from the vector package) Based on the original BSD3-licensed work by Don Stewart in the vector-binary-instances library.
-
A binding to the fftw library for one-dimensional 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.
-
Memory map immutable and mutable vectors Memory map immutable and mutable vectors.
-
Fast and flexible quicksort implementation for mutable vectors Quicksort implementation developed with performance in mind. Has good default single-threaded sort and provides parallelised versions that are actually faster than the single-threaded version. Users can define new parallelisation methods. Good starting point:
import Data.Vector.Algorithms.Quicksort qualified as Quick
Then call asQuick.sort xs
-
Vectors with O(1) reverse A wrapper for an arbitrary Vector with O(1) reverse. Instead of creating a copy, it just flips a flag, which inverts indexing. Imagine it as a vector with a switch between little-endianness and big-endianness.
-
Functor-parametric containers A dependently-typed key-value data structure that allows for storage of both "queries", (wherein keys are stored along with reasons for selecting the items or counts of the number of times something has been selected), as well as the responses to those queries, in which the type of the key additionally determines the type of the response
-
Extend vformat to time datatypes Please see http://hackage.haskell.org/package/vformat-time
-
Implementation of SuperCollider server specifications An interface-agnostic implementation of specs for SuperCollider server types and commands. - Server Command Reference - Synth Definition File Format Note this is an in-progress (incomplete) implementation. Currently only the server commands needed for the "vivid" package are supported.
-
Unix backend for Vty This package provides Unix terminal support for Vty.