[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFS: libcomplearn (updated package)



Andreas suggestions have underscored a lack of documentation in the libcomplearn package.
I will take this opportunity to explain a bit what the purpose of the "complearn compression module"
system is.  From a high level, complearn compression modules abstract away compression
particulars and allow developers to use compression and decompression without knowing any
specifics about which compressor is in operation.  So, for example, this system enables one to
easily write a meta-compression program that cycles through all possible compressors to see
which one compresses the best and then use it, etc.

An easy way to try it is to use the "anycompress -c gzip infile infile.gz" as another way
to do gzip compression, for example.

On 5/29/07, Andreas Tille <tillea@rki.de> wrote:

I have no idea what lzma and ppmd are but at least it sounds as a valid
reason to exclude these archs.  On the other hand I wonder whether it is a
good idea to relay on software that is not maintained any more and not
ported to 64 bit archs.  I'd consider looking for a replacement - but
as I said - I have no idea about this stuff.

These are two data compression programs that are only available as separate executables.   The
basic situation in data compression at the moment is thus: Over the last four decades, an amazing
variety of data compression programs have been written in many languages.  There are hundreds.
Most are in C but alas all the interfaces are different.  Most are not available as libraries so there
is no "clean" way to interface them easily.  The CompLearn Compression Module interface allows
us to have one common format to support every kind of data compressor / decompressor.  So, this
includes gzip, bzip2, libbz, libz, ppmdx, lzmax, sha1, sha2, md5 at the moment.  Some of these
modules are "built in" and the rest install in /usr/lib/complearn/modules

You may realize, then, that I am not really "relying" on lzma or ppmd but just offering the option.
It is just an option available on certain (32-bit) architectures only.  It winds up computing a different
feature vector (or distance matrix, or scalar) with each different type of compressor.  So you have
actually reconstructed the reason that I have packaged the complearn-mod-lzmax and
complearn-mod-ppmdx modules separately: so that all the rest of the functionality of the system
is available everywhere.

Best regards,

Rudi


--
Democracy is two wolves and a sheep deciding what to eat for lunch.
Liberty is a well-armed sheep contesting the vote.
Reply to: