Zippy is a small file compression utility built purely in Haskell. It provides for two different data compression techniques, namely,
This project was built as a partial fullfilment towards CS2433-Principles of Programming Languages II (Spring'18) taught by Dr. Saurabh Joshi at IIT Hyderabad.
Open a terminal window.
$ ./zippy <option> <input_file> <output_file>
Zippy requires three command-line arguments :
<option>
can take the following values:
-c-huf
for compression using Huffman encoding.-c-lzw
for compression using LZW compression algorithm.-d-huf
for decompression using Huffman encoding.-d-lzw
for decompression using LZW compression algorithm.<input_file>
is the relative path of the file to be compressed.<output_file>
is the relative path of the compressed/decompressed file.Zippy requires GHC 8.0.2+ to build source. Clone the repository.
$ cd haskell-13
$ chmod +x build.sh
$ ./build.sh