zlib is designed to be a free, general-purpose, legally unencumbered, lossless data-compression library for use on virtually any computer hardware and operating system. The zlib data format is itself portable across platforms. Unlike the LZW compression method used in Unix compress(1), the compression method currently used in zlib essentially never expands the data. (LZW can double or triple the file size in extreme cases.) zlib's memory footprint is also independent of the input data and can be reduced, if necessary, at some cost in compression.
LZO is a portable lossless data compression library written in ANSI C. It offers pretty fast compression and very fast decompression. Decompression requires no memory. In addition there are slower compression levels achieving a quite competitive compression ratio while still decompressing at this very high speed.
Pysync has both a demonstration implementation of the rsync and related algorithms in pure Python, and a high speed librsync Python extension. The pure Python is not fast and is not optimized, however it does work and provides a simple implementation of the algorithm for reference and experimentation. It includes a combination of ideas taken from librsync, xdelta, and rsync. The librsync Python extension is less flexible and harder to understand, but is very fast.
Industria is a collection of portable R6RS Scheme libraries for cryptography (AES, DES, Blowfish, HMAC, MD5, SHA-1, SHA-2, RSA, DSA, etc.), zip/gzip/zlib decompression, disassembly of amd64 machine code, Off-The-Record messaging, bytevector pack/unpack syntax, TLS connections via custom binary ports, and more.
pkt is a universal XML packet archiver. It can manipulate files for backing up documents, transferring them across networks, emailing them, and sharing them by other means (p2p etc). It uses plugin filters to do the job and handles virtually any format available if there is a plugin for it. It handles encryption, compression, conversion, parity checking, decryption, decoding, repairing, rebuilding, and other tasks using a universal file format (XML-based). By default, all pkt output is in 7-bit ASCII which is UTF encoded and is compatible with XML parsers. pkt files can be disassembled, reassembled, and repaired by hand if necessary. pkt also supports the use of 8-bit compressed XML packets for its archives using one of several compression algorithms. In general, pkt will try to use the best algorithms available.