Lessons learned about one-way, dataflow constraints in the Garnet and Amulet graphical toolkits

  • Authors:
  • Bradley T. Vander Zanden;Richard Halterman;Brad A. Myers;Rich McDaniel;Rob Miller;Pedro Szekely;Dario A. Giuse;David Kosbie

  • Affiliations:
  • University of Tennessee, Knoxville, TN;University of Tennessee, Knoxville, TN;Carnegie Mellon University, Pittsburgh, PA;Carnegie Mellon University, Pittsburgh, PA;Carnegie Mellon University, Pittsburgh, PA;USC/Information Sciences Institute, Marina del Rey, CA;Vanderbilt University Medical Center, Nashville, TN;Microsoft Corporation

  • Venue:
  • ACM Transactions on Programming Languages and Systems (TOPLAS)
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

One-way, dataflow constraints are commonly used in graphical interface toolkits, programming environments, and circuit applications. Previous papers on dataflow constraints have focused on the design and implementation of individual algorithms. In contrast, this article focuses on the lessons we have learned from a decade of implementing competing algorithms in the Garnet and Amulet graphical interface toolkits. These lessons reveal the design and implementation tradeoffs for different one-way, constraint satisfaction algorithms. The most important lessons we have learned are that (1) mark-sweep algorithms are more efficient than topological ordering algorithms; (2) lazy and eager evaluators deliver roughly comparable performance for most applications; and (3) constraint satisfaction algorithms have more than adequate speed, except that the storage required by these algorithms can be problematic.