Propane is a system for synthesizing images and animations, in the spirit
of Pan (http://conal.net/Pan/) and many other projects. The core idea is
that an image is a function assigning a colour to each point in the plane.
Similarly, an animation assigns an image to each point in time. Haskell's
tools for functional and declarative programming can be used directly on
images and animations.
Several examples are provided, in the examples/
directory.
Propane uses the Repa array library. This means that Propane automatically
uses multiple CPU cores for rendering, provided the program is compiled and
run with threads enabled. That said, the implementation has not yet been
optimized for speed.
Propane is a modest toy right now, but there are vague plans to make it
do fancy things. Please contact the author with suggestions or code!