Loading...
Thumbnail Image
Publication

ChalkBoard: A Functional Image Description Language and Its Practical Applications

Matlage, Kevin
Citations
Altmetric:
Abstract
ChalkBoard is a domain specific language (DSL) for describing images. The ChalkBoard language is uncompromisingly functional and encourages the use of modern functional idioms. Unlike many similar systems, ChalkBoard uses off-the-shelf graphics cards to speed up the rendering of these functional descriptions. The speed gained from this efficient rendering has allowed the addition of animation to the language. The Active extension to ChalkBoard is another DSL, built on top of ChalkBoard, that captures the concept of animation inside a Haskell applicative functor. This allows for a clean, compositional approach to animation in ChalkBoard. Given both the efficiency and functional style of this animation, there are many possible applications. One of these is a system called Active Transformations, which uses the animation capabilities of ChalkBoard to animate code (and other tree-based) transformations. The Active Transformations system uses ChalkBoard animation in order to show how certain transformations and optimizations occur, instead of just providing before and after snapshots, making it an extremely useful educational tool. In this thesis, the design of each of these systems is described and explained, from the core ChalkBoard language, to the Active extension to ChalkBoard, and finally the Active Transformation system built on top of them.
Description
Date
2011-04-21
Journal Title
Journal ISSN
Volume Title
Publisher
University of Kansas
Research Projects
Organizational Units
Journal Issue
Keywords
Computer science, Animation, Applicative functors, Computer graphics, Domain specific languages, Functional programming, Haskell
Citation
DOI
Embedded videos