bitwise: fast multi-dimensional unboxed bit packed Bool arrays

[ bit-vectors, bsd3, data, data-structures, library ] [ Propose Tags ]

Unboxed multidimensional bit packed Bool arrays with fast aggregate operations based on lifting Bool operations to bitwise operations.

There are many other bit packed structures out there, but none met all of these requirements:

  1. unboxed bit packed Bool array,

  2. multi-dimensional indexing,

  3. fast (de)serialization, or interoperable with foreign code,

  4. fast aggregate operations (fold, map, zip).

Quick tour of the bitwise library:

Lift boolean operations on Bool to bitwise operations on Data.Bits.Bits.
Immutable bit arrays.
Mutable bit arrays in Control.Monad.ST.ST.
Mutable bit arrays in IO.
Portable bitmap monochrome 2D image format.

Very rough performance benchmarks:

[Skip to Readme]
Versions [faq] 0.1,,, 0.1.1,, 0.2,
Dependencies array, base (>=2 && <4.9), bytestring [details]
License BSD-3-Clause
Copyright (c) 2012,2016 Claude Heiland-Allen
Author Claude Heiland-Allen
Category Data, Data Structures, Bit Vectors
Home page
Source repo head: git clone
this: git clone v0.1.1)
Uploaded by ClaudeHeilandAllen at Mon Feb 29 20:18:55 UTC 2016
Distributions NixOS:
Downloads 4753 total (116 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2016-11-27 [all 2 reports]


  • Codec
    • Image
      • Codec.Image.PBM
  • Data
    • Array
      • Data.Array.BitArray
        • Data.Array.BitArray.ByteString
        • Data.Array.BitArray.IO
        • Data.Array.BitArray.ST
    • Bits
      • Data.Bits.Bitwise


Maintainer's Corner

For package maintainers and hackage trustees

Readme for bitwise-0.1.1

[back to package description]
Interactive interpreted usage without having installed first
requires adding a search path for the respective environment:

  hugs -98 -P:src:hugs98
  ghci-7.0.4 -isrc:ghc70
  ghci-7.4.1 -isrc:ghc74

ghc < 7 has not been tested, reports welcome.