Efficient little-endian bit vector library

Version on this page:0.1.1
LTS Haskell 22.26:1.3.2
Stackage Nightly 2024-06-18:1.3.2
Latest on Hackage:1.3.2

See all snapshots bv-little appears in

BSD-3-Clause licensed by Alex Washburn
Maintained by [email protected]
This version can be pinned in stack with:bv-little-0.1.1@sha256:8b38a7bf82d762058b46b543df4116f95388da8f6faee09b9ed9c24697140f17,4581

Module documentation for 0.1.1

Efficient little-endian bit vector Haskell library

Build Status Coverage Status License FreeBSD Hackage Stackage Nightly Stackage LTS

This package contains an efficient implementation of little-endian bit vectors. It implements most applicable typeclasses and also conversions to and from signed or unsigned numbers. Care has been taken to balance the number of transitive dependencies with respect to functionality provided.

For an implementation of big-endian bit vectors, use the bv package.


The test suite ensures that all typeclass instances are “lawful” and that data-structure–specific functionality is well defined.

The TestSuite.hs file contains the specification. It can be run by invoking any of the following commands:

  • cabal new-test

  • cabal test

  • stack test


The benchmarks provide an empirical check for the asymptotic complexity of data structure operations and also provide easy metrics for detecting performance regressions.

The Benchmaks.hs file contains these metrics. It can be run by invoking any of the following commands:

  • cabal new-bench

  • cabal bench

  • stack bench


Unreleased changes

  • None


  • Updated to well-typed internal representation

  • Increased benchmark coverage

  • Increased test suite coverage


  • Created instances of applicable typeclass instances

  • Added numeric conversion functions

  • Added basic test suite

  • Added stub benchmark