bv-sized: a BitVector datatype that is parameterized by the vector width

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.


This module defines a width-parameterized BitVector type and various associated operations that assume a 2's complement representation.

[Skip to ReadMe]


Versions0.1.0.0,,,, 0.2.0
Dependenciesbase (>=4.7 && <5), containers (>=0.5.11 && <0.6), lens (==4.*), parameterized‑utils [details]
CopyrightMarch 2018
AuthorBen Selfridge
CategoryBit Vectors
Home page
UploadedSun Mar 11 17:09:20 UTC 2018 by benselfridge




Maintainers' corner

For package maintainers and hackage trustees

Readme for bv-sized-

[back to package description]


This library defines a BitVector datatype that is parameterized by the vector width.

It is especially useful in applications where the length of every individual bit vector will be known at compile time. Supports width-changing operations like truncation, signed/unsigned extension, and extraction/bit slicing.