Skip to content
This repository was archived by the owner on Sep 22, 2019. It is now read-only.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fast compression for Haskell ByteStrings

This library implements Haskell bindings to QuickLZ, a fast compression library. The interface is very simple:

compress    :: ByteString -> ByteString
decompress  :: ByteString -> ByteString
decompress' :: ByteString -> ByteString -- overlapping decompression

As the name states, QuickLZ is fast - at both compression and decompression. Per their own benchmarks, at compression level 1, QuickLZ 1.5.0 has a compression speed of 308Mbyte/s, and a decompression speed of 358Mbyte/s (their benchmarks, Core i7 920.)

travis-ci.org results: Build Status

Installation

Just use cabal:

cabal install quicklz

Join in

File bugs in the GitHub issue tracker.

Master git repository:

  • git clone https://github.com/thoughtpolice/hs-quicklz.git

Authors

See AUTHORS.txt.

License.

GPLv2. See LICENSE.txt for terms of copyright and redistribution.

TODO

This package has some benchmarks and tests associated - I would like to expand the benchmarks to include bigger data sets in the future.

There is currently only an interface for strict ByteStrings.

I would like to implement the streaming mode functionality sometime in the future, perhaps tying it to John Millikin's enumerator package.

About

Haskell binding to the QuickLZ library

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages