home · mobile · calendar · defenses · 2001-2002 · 

Thesis Defense - Wehrend

Design Process for Application-Specific Languages: A Language for Water Resource Policy Specification
Computer Science PhD Candidate

Application-specific languages are custom programming languages that are used within the context of a single application. They provide users with functionality that cannot be readily built into an application through other means, such as direct manipulation interfaces. Generally, application-specific languages are appropriate where the problems to be solved are not completely known in advance and require the use of complex logic or flow of control.

Application-specific languages are frequently designed and developed, yet there is little literature published on their design. What is published tends to focus on the domain of the problem for which the language is needed, the language itself and how well the language addresses the problems for which it was created. There is little discussion regarding what design decisions were made and why, what alternatives were considered and what components might need to be a part of an application-specific language system.

In an effort to shed light on the design of application-specific languages and to provide guidance for future designers, this dissertation presents a multi-part case study in which a two generation application-specific language was designed and developed. The language is used to specify policies that are part of water resources simulations. The target application, RiverWare, is a general purpose river basin modeling tool. The policies specified in the language are used by RiverWare's simulation engine to alter the flow of water through a river basin. The users of this system and language are water resources engineers whose programming experience and abilities range from minimal to moderate.

Committee: Clayton Lewis, Professor (Chair)
Elizabeth Jessup, Associate Professor
Amer Diwan, Assistant Professor
René Reitsma, St. Francis Xavier University
Terry Fulp, U.S. Bureau of Reclamation
Department of Computer Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
May 5, 2012 (14:20)