The following module was proposed for inclusion in the Module List:
modid: Data::BitStream
DSLIP: bdpO2
description: A bit stream class including integer coding
userid: DANAJ (Dana Jacobsen)
chapterid: 6 (Data_Type_Utilities)
communities:
#perl on irc.freenode.net, https://github.com/danaj/BitStream
similar:
SWF::BinStream
rationale:
This is primarily a data structure (a bit stream, sort of a queue
of bits though one walks the bits rather than removes them).
I debated Bit::Stream or Data::Bit::Stream, but I believe
Data::BitStream fits better.
For similar reasons I think this belongs in the data section,
though the archiving / compression / encryption sections all have
merit. However, bit streams (and variable length coding methods) are
used in archiving, compression, image storage, and encryption, among
other areas. Hence it doesn't seem like there is a particular
application field that best applies.
I looked through CPAN for similar modules and did not find anything
fitting what I am trying to do. Certainly nothing with the integer
coding (variable length coding) methods.
Data::Stream and Data::Stream::Bulk have interesting ideas, but are
mostly API rather than actual streams.
SWF::BinStream sort of models the concept of a bit stream, but the
underlying storage is not efficient at all, and it really is more
modeled on storing byte-integral size chunks with some access to the
bits. It has no support for integer coding methods (though this
could be added via codecs). My small experiments with it indicated
it was 2-4x slower than my module and had non-trivial space
overhead. I believe my module adds significant value that could not
be achieved by adding to SWF::BinStream.
enteredby: DANAJ (Dana Jacobsen)
enteredon: Fri Sep 30 05:40:52 2011 GMT
The resulting entry would be:
Data::
::BitStream bdpO2 A bit stream class including integer coding DANAJ
Thanks for registering,
--
The PAUSE
PS: The following links are only valid for module list maintainers:
Registration form with editing capabilities:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=35800000_3fc6af01b74e3d41&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=35800000_3fc6af01b74e3d41&SUBMIT_pause99_add_mod_insertit=1
Peek at the current permissions:
https://pause.perl.org/pause/authenquery?pause99_peek_perms_by=me&pause99_peek_perms_query=Data%3A%3ABitStream