|
From: | Graydon Hoare |
Subject: | [Monotone-devel] Re: results of mercurial user survey |
Date: | Sun, 30 Apr 2006 22:45:16 -0700 |
User-agent: | Thunderbird 1.5.0.2 (Windows/20060308) |
Nathaniel Smith wrote:
Plus it's totally non-streamable :-). You'd basically end up doing exactly what we do now, since bzip2 operates on blocks (hence the "b")...
Eh, I'm not sure I really agree with this interpretation. As far as I know, most compressors operate on (possibly padded) blocks; the only things I mean by "streaming" are:
- There's some retained state in the compressor, between blocks. - The block size is unrelated to natural transmission units, hence you need some secondary interaction between the transmission protocol and the compressor to ensure proper flushing.zlib's blocks for example specify the compression mode and, if that mode implies a custom huffman tree, then the tree itself.
(I always thought the "b" in "bzip2" was for "Burrows-Wheeler", but I might be wrong; wikipedia suggests that bzip -- the ancestor to bzip2 -- used arithmetic coding, so maybe it just stands for "better". Perhaps we should ask Julian :)
-graydon
[Prev in Thread] | Current Thread | [Next in Thread] |