propane

Functional synthesis of images and animations

Latest on Hackage:0.1

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD-3-Clause licensed and maintained by Keegan McAllister

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!