Projects / Bit::Vector


Bit::Vector is a (stand-alone) C library and an object-oriented Perl module (with overloaded operators) which allows you to handle bit vectors, sets (of integers), "big integer arithmetic" (e.g. for cryptography), and boolean matrices (all of arbitrary size) very efficiently.

Operating Systems

Recent releases

  •  30 Sep 2009 03:34

    Release Notes: This release adds the prefix "BV_" to all global identifiers in "BitVector.c", "BitVector.h", and "Vector.xs".

    •  24 Aug 2009 20:46

      Release Notes: This release fixes two minor bugs: one in GCD2() related to null-sized bitvectors (possible write outside of allocated buffer), and a sporadic one under MacOS (Darwin) related to the calculated number of bits in an unsigned long. It adds test cases for these issues.

      •  12 Aug 2009 20:34

        Release Notes: This release fixes a potential problem with data exchange between systems of different endianness (by replacing Storable::freeze with Storable::nfreeze), adds more test cases for Storable, and adds a proof-of-concept example of how to freeze/thaw bit vectors with Data::Dumper (currently not recommendable though).

        •  10 Aug 2009 20:37

          Release Notes: This release fixes a bug that caused Storable to not reconstruct nested data structures properly that contain several references to the same Bit::Vector object, fixes a potential problem with a hard-coded constant in BitVector.c, and updates the documentation.

          •  27 Jul 2009 20:30

            Release Notes: This release automatically supports persistence (serialization) using "Storable". It fixes a glitch that made it thread-unsafe, fixes another one that made it leak memory, and fixes a problem with the Boolean C type in combination with Mac OS X.

            Recent comments

            17 May 2010 09:45 UPi

            Why is this project tagged with multimedia, Graphics, Sound/Audio, Scientific/Engineering etc? It has absolutely nothing to do with those!

            12 Oct 2004 02:38 stbey

            Similar project
            A similar project is "libBitvector", which implements arbitrary-sized vectors of zero and one flags (bit vectors or bit strings) that can be operated on with AND, OR, XOR, NOT, LSHIFT, and RSHIFT operators.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.