An implementation of Adler-32, supporting rolling checksum operation

LTS Haskell 22.26:
Stackage Nightly 2024-06-22:
Latest on Hackage:

See all snapshots adler32 appears in

BSD-3-Clause licensed and maintained by Marios Titas <rednebΑΤgmxDΟΤcom>
This version can be pinned in stack with:adler32-,2113

Module documentation for

Depends on 2 packages(full list with versions):

This package provides an implementation of the Adler-32 checksum algorithm. It supports a rolling checksum mode, i.e. the checksum of a sliding window of the input message can be computed efficiently. It also supports compounding, i.e. the checksum of the concatenation of two messages can be efficiently computed from the checksums of the two parts.

By default, the highly optimized implementation of Adler-32 from zlib will be used. This can be disabled, in which case a pure haskell implementation will be used instead. On my system, the haskell version is 2 to 3 times slower.

Changes 2018-03-15

  • Fix compatibility with base-4.11/GHC 8.4 2016-01-25

  • Introduce the adler32Update' method to the Adler32Src class.