The WOOL Workflow Programming Language
Geoffrey Hulette
Committee: Allen Malony (chair), Matt Sottile, Michal Young
Directed Research Project(Sep 2008)
Keywords: workflow; language; computational science

Workflows offer scientists a simple but flexible programming model at a level of abstraction closer to the domain-specific activities that they seek to perform. However, languages for describing workflows tend to be highly complex, or specialized towards a particular domain, or both. WOOL is an abstract workflow language with human-readable syntax, intuitive semantics, and a powerful abstract type system. WOOL workflows can be targeted to almost any kind of runtime system supporting data-flow computation. In this paper we describe the design of the WOOL language and the implementation of its compiler, along with a simple example runtime. We demonstrate its use in an image-processing workflow.