A) there already is std.zlib; why not have: std.compress.zlib: public import std.zlib std.compress.lzw: put this new module there instead of in std.compress std.compress.image.png std.compress.image.jpg
B) rename: std.compress.lzwCompress => std.compress.lzw.compress std.compress. lzwExpand => std.compress.lzw.uncompress which is more consistent with compress/uncompress from std.zlib C) maybe add a link to https://en.wikipedia.org/wiki/Lempel%E2%80%93Ziv%E2%80%93Welch or other source D) CircularBuffer belongs somewhere else; maybe std.range or std.container On Mon, Jun 3, 2013 at 8:44 PM, Walter Bright <[email protected]>wrote: > https://github.com/**WalterBright/phobos/blob/std_** > compress/std/compress.d<https://github.com/WalterBright/phobos/blob/std_compress/std/compress.d> > > I wrote this to add components to compress and expand ranges. > > Highlights: > > 1. doesn't do any memory allocation > 2. can handle arbitrarily large sets of data > 3. it's lazy > 4. takes an InputRange, and outputs an InputRange > > Comments welcome. >
