quicklz: QuickLZ compression for ByteStrings

[ codec, gpl, library ] [ Propose Tags ]
Dependencies base (<5), bytestring (>=0.9) [details]
License GPL-2.0-only
Author Austin Seipp
Maintainer mad.one@gmail.com
Category Codec
Home page http://github.com/thoughtpolice/hs-quicklz
Bug tracker https://github.com/thoughtpolice/hs-quicklz/issues
Source repo head: git clone https://github.com/thoughtpolice/hs-quicklz.git
Uploaded by AustinSeipp at Sat Sep 1 19:18:59 UTC 2012
Distributions NixOS:
Downloads 3626 total (42 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI

This package provides a high level binding to the QuickLZ compression library for ByteStrings, under the GPLv2 license. QuickLZ is fast and compresses very well. Check out the home page: http://quicklz.com

This package includes the QuickLZ 1.5.0 source code, at compression level 1 and streaming mode disabled.

The versioning scheme for this package is unusual. QuickLZ tries to be as fast as possible, and will break backwards compatibility to achieve it in newer versions. This versioning scheme reflects the QuickLZ versioning scheme: the first three digits of version w.x.y.z are the quicklz version, with the z component (and any further needed ones) being updates to this package, not quicklz itself.

[Skip to Readme]





enable quickLZ memory safety checks


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees

Readme for quicklz-

[back to package description]

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


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


See AUTHORS.txt.


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


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.