Multi-way versus One-way Constraints in User Interfaces: Experience with the DeltaBlue Algorithm

Authors: Michael Sannella, John Maloney, Bjorn Freeman-Benson, and Alan Borning

Software--Practice and Experience, Vol. 23 No. 5, (May 1993), pages 529-566. Preprint published as UW Tech Report 92-07-05.


Abstract

The efficient satisfaction of constraints is essential to the performance of constraint-based user interfaces. In the past, most constraint-based user interfaces have used one-way rather than multi-way constraints because of a widespread belief that one-way constraints were more efficient. In this paper we argue that many user interface construction problems are handled more naturally and elegantly by multi-way constraints than by one-way constraints. We present pseudocode for an incremental multi-way constraint satisfaction algorithm, DeltaBlue, and describe experience in using the algorithm in two user interface toolkits. Finally, we provide performance figures demonstrating that multi-way constraint solvers can be entirely competitive in performance with one-way constraint solvers.


full paper (compressed postscript)

Constraints home page