Small project for a university course on functional and logical programming languages
https://github.com/javache/GIF87a.git
Installation
cabal install. The main executable
will be placed in your ~cabal/bin folder.
Usage
convert input.jpg output.gif87
The main application executable, gif87a, takes as its arguments a list of gif87a-files. The output will depend on the given options:
-e --encode Re-encode the images -p --parse Show the internal structure of the image -t --transform Apply transformations to each image
Code
GIF87a.Image: datatype for parsed images GIF87a.Parser: AttoParsec-parser GIF87a.Encoder: image encoder GIF87a.Transformations: some higher order functions and predefined transformations on images GIF87a.LZW implementation of the GIF LZW alorithm
Some tests can be found in the test-folder.